update 20250111
This commit is contained in:
@@ -16,6 +16,7 @@ using NLog;
|
||||
using Syncfusion.XlsIO.Implementation.XmlSerialization;
|
||||
using System.Security.Authentication.ExtendedProtection;
|
||||
using System.Drawing;
|
||||
using System.Drawing.Drawing2D;
|
||||
using Syncfusion.XPS;
|
||||
using System.Xml.Linq;
|
||||
using System.Text.RegularExpressions;
|
||||
@@ -35,6 +36,8 @@ using System.Runtime.CompilerServices;
|
||||
using System.Runtime.InteropServices;
|
||||
using static System.Net.Mime.MediaTypeNames;
|
||||
using System.Diagnostics;
|
||||
using Database;
|
||||
using System.Drawing.Drawing2D;
|
||||
|
||||
|
||||
|
||||
@@ -274,16 +277,25 @@ namespace DOCGEN.Klassen
|
||||
{
|
||||
insert_ppfaktura(document, img_faktura);
|
||||
}
|
||||
if (docdata.Form_ohne_Unterschrift=="True" || docdata.As_Faksimile == "True")
|
||||
{
|
||||
DB db = new DB();
|
||||
}
|
||||
foreach (clsDocValue dv in docdata.DocValues)
|
||||
{
|
||||
if (docdata.Form_ohne_Unterschrift == "True")
|
||||
{
|
||||
foreach (clsDocValue dv2 in docdata.DocValues)
|
||||
{
|
||||
if (dv2.TMBeginn.ToString() == "TGEDKVornameNameLinksB99") { dv2.Value = ""; }
|
||||
if (dv2.TMBeginn.ToString() == "TGEDKVornameNameRechtsB99") { dv2.Value = ""; }
|
||||
if (dv2.TMBeginn.ToString() == "TGEDKFunktionLinksB99") { dv2.Value = ""; }
|
||||
if (dv2.TMBeginn.ToString() == "TGEDKFunktionRechtsB99") { dv2.Value = ""; }
|
||||
|
||||
if (dv2.TMBeginn.ToString().Contains("VornameNameLinks")) { dv2.Value = ""; }
|
||||
if (dv2.TMBeginn.ToString().Contains("VornameNameRechts")) { dv2.Value = ""; }
|
||||
if (dv2.TMBeginn.ToString().Contains("TGEDKFunktionLinks")) { dv2.Value = ""; }
|
||||
if (dv2.TMBeginn.ToString().Contains("FunktionRechts")) { dv2.Value = ""; }
|
||||
//if (dv2.TMBeginn.ToString() == "TGEDKVornameNameLinksB99") { dv2.Value = ""; }
|
||||
//if (dv2.TMBeginn.ToString() == "TGEDKVornameNameRechtsB99") { dv2.Value = ""; }
|
||||
//if (dv2.TMBeginn.ToString() == "TGEDKFunktionLinksB99") { dv2.Value = ""; }
|
||||
//if (dv2.TMBeginn.ToString() == "TGEDKFunktionRechtsB99") { dv2.Value = ""; }
|
||||
}
|
||||
}
|
||||
if (dv.TMBeginn.ToString() != "" && dv.TMEnd.ToString() == "")
|
||||
@@ -291,20 +303,24 @@ namespace DOCGEN.Klassen
|
||||
try
|
||||
{
|
||||
BookmarksNavigator bookmarkNavigator = new BookmarksNavigator(document);
|
||||
if ((dv.TMBeginn.ToString() == "TGEDKVornameNameLinksB99" || dv.TMBeginn.ToString() == "TGEDKVornameNameRechtsB99") && docdata.As_Faksimile == "True")
|
||||
// if ((dv.TMBeginn.ToString() == "TGEDKVornameNameLinksB99" || dv.TMBeginn.ToString() == "TGEDKVornameNameRechtsB99") && docdata.As_Faksimile == "True")
|
||||
if ((dv.TMBeginn.ToString().Contains("VornameNameLinks") || dv.TMBeginn.ToString().Contains("VornameNameRechts")) && docdata.As_Faksimile == "True")
|
||||
{
|
||||
string funktionlinks = "";
|
||||
string funktionrechts = "";
|
||||
foreach (clsDocValue dv2 in docdata.DocValues)
|
||||
{
|
||||
if (dv2.TMBeginn.ToString()== "TGEDKFunktionLinksB99") { funktionlinks = dv2.Value.ToString(); }
|
||||
if (dv2.TMBeginn.ToString() == "TGEDKFunktionRechtsB99") { funktionrechts = dv2.Value.ToString(); }
|
||||
//if (dv2.TMBeginn.ToString() == "TGEDKFunktionLinksB99") { funktionlinks = dv2.Value.ToString(); }
|
||||
//if (dv2.TMBeginn.ToString() == "TGEDKFunktionRechtsB99") { funktionrechts = dv2.Value.ToString(); }
|
||||
if (dv2.TMBeginn.ToString().Contains("FunktionLinks")) { funktionlinks = dv2.Value.ToString(); }
|
||||
if (dv2.TMBeginn.ToString().Contains("FunktionRecht")) { funktionrechts = dv2.Value.ToString(); }
|
||||
}
|
||||
bookmarkNavigator.MoveToBookmark(dv.TMBeginn.ToString());
|
||||
IWParagraph paragraph = new WParagraph(document);
|
||||
paragraph.AppendBreak(BreakType.LineBreak);
|
||||
|
||||
if (dv.TMBeginn.ToString() == "TGEDKVornameNameLinksB99")
|
||||
// if (dv.TMBeginn.ToString() == "TGEDKVornameNameLinksB99")
|
||||
if (dv.TMBeginn.ToString().Contains("VornameNameLinks"))
|
||||
{
|
||||
string unterschrift = "";
|
||||
if (img_UL != "") { unterschrift = img_UL.ToString(); } else {
|
||||
@@ -337,7 +353,8 @@ namespace DOCGEN.Klassen
|
||||
//paragraph.AppendPicture(image);
|
||||
paragraph.AppendBreak(BreakType.LineBreak);
|
||||
paragraph.AppendText(dv.Value.ToString());
|
||||
if (dv.TMBeginn.ToString() == "TGEDKVornameNameLinksB99")
|
||||
//if (dv.TMBeginn.ToString() == "TGEDKVornameNameLinksB99")
|
||||
if (dv.TMBeginn.ToString().Contains("VornameNameLinks"))
|
||||
{
|
||||
paragraph.AppendBreak(BreakType.LineBreak);
|
||||
paragraph.AppendText(funktionlinks);
|
||||
@@ -355,8 +372,9 @@ namespace DOCGEN.Klassen
|
||||
}
|
||||
else
|
||||
{
|
||||
if (docdata.As_Faksimile=="True" && (dv.TMBeginn.ToString() == "TGEDKFunktionLinksB99" || dv.TMBeginn.ToString() == "TGEDKFunktionRechtsB99"))
|
||||
{
|
||||
//if (docdata.As_Faksimile=="True" && (dv.TMBeginn.ToString() == "TGEDKFunktionLinksB99" || dv.TMBeginn.ToString() == "TGEDKFunktionRechtsB99"))
|
||||
if (docdata.As_Faksimile == "True" && (dv.TMBeginn.ToString().Contains("FunktionLinks") || dv.TMBeginn.ToString().Contains("FunktionRechts")))
|
||||
{
|
||||
|
||||
}
|
||||
else
|
||||
@@ -685,6 +703,82 @@ namespace DOCGEN.Klassen
|
||||
|
||||
}
|
||||
|
||||
private static System.Drawing.Image ResizeImage(System.Drawing.Image imgToResize, Size size)
|
||||
{
|
||||
// Get the image current width
|
||||
int sourceWidth = imgToResize.Width;
|
||||
// Get the image current height
|
||||
int sourceHeight = imgToResize.Height;
|
||||
float nPercent = 0;
|
||||
float nPercentW = 0;
|
||||
float nPercentH = 0;
|
||||
// Calculate width and height with new desired size
|
||||
nPercentW = ((float)size.Width / (float)sourceWidth);
|
||||
nPercentH = ((float)size.Height / (float)sourceHeight);
|
||||
nPercent = Math.Min(nPercentW, nPercentH);
|
||||
// New Width and Height
|
||||
int destWidth = (int)(sourceWidth * nPercent);
|
||||
int destHeight = (int)(sourceHeight * nPercent);
|
||||
Bitmap b = new Bitmap(destWidth, destHeight);
|
||||
Graphics g = Graphics.FromImage((System.Drawing.Image)b);
|
||||
g.InterpolationMode = InterpolationMode.HighQualityBicubic;
|
||||
// Draw image with new width and height
|
||||
g.DrawImage(imgToResize, 0, 0, destWidth, destHeight);
|
||||
g.Dispose();
|
||||
return (System.Drawing.Image)b;
|
||||
}
|
||||
|
||||
public System.Drawing.Image AutoSizeImage(System.Drawing.Image oBitmap, int maxWidth, int maxHeight, bool bStretch = false)
|
||||
{
|
||||
|
||||
// Größenverhältnis der max. Dimension
|
||||
float maxRatio = (float)(maxWidth / (double)maxHeight);
|
||||
|
||||
// Bildgröße und aktuelles Größenverhältnis
|
||||
int imgWidth = oBitmap.Width;
|
||||
int imgHeight = oBitmap.Height;
|
||||
float imgRatio = (float)(imgWidth / (double)imgHeight);
|
||||
|
||||
// Bild anpassen?
|
||||
if (imgWidth > maxWidth | imgHeight > maxHeight | bStretch)
|
||||
{
|
||||
if (imgRatio <= maxRatio)
|
||||
{
|
||||
// Größenverhältnis des Bildes ist kleiner als die
|
||||
// maximale Größe, in der das Bild angezeigt werden kann.
|
||||
// In diesem Fall muss die Bildbreite angepasst werden.
|
||||
imgWidth = (int)Math.Round(imgWidth / (imgHeight / (double)maxHeight));
|
||||
imgHeight = maxHeight;
|
||||
}
|
||||
else
|
||||
{
|
||||
// Größenverhältnis des Bildes ist größer als die
|
||||
// maximale Größe, in der das Bild angezeigt werden kann.
|
||||
// In diesem Fall muss die Bildhöhe angepasst werden.
|
||||
imgHeight = (int)Math.Round(imgHeight / (imgWidth / (double)maxWidth));
|
||||
imgWidth = maxWidth;
|
||||
}
|
||||
|
||||
// Bitmap-Objekt in der neuen Größe erstellen
|
||||
var oImage = new Bitmap(imgWidth, imgHeight);
|
||||
|
||||
// Bild interpolieren, damit die Qualität erhalten bleibt
|
||||
using (Graphics g = Graphics.FromImage(oImage))
|
||||
{
|
||||
g.InterpolationMode = System.Drawing.Drawing2D.InterpolationMode.HighQualityBicubic;
|
||||
g.DrawImage(oBitmap, new System.Drawing.Rectangle(0, 0, imgWidth, imgHeight));
|
||||
}
|
||||
|
||||
// neues Bitmap zurückgeben
|
||||
return oImage;
|
||||
}
|
||||
else
|
||||
{
|
||||
// unverändertes Originalbild zurückgeben
|
||||
return oBitmap;
|
||||
}
|
||||
}
|
||||
|
||||
public void Insert_Barcode(WordDocument document, clsDocData docData)
|
||||
{
|
||||
System.Drawing.Image barcodeimage;
|
||||
@@ -695,14 +789,21 @@ namespace DOCGEN.Klassen
|
||||
//int rotation = 0;
|
||||
//if (docData.barcode_horizontal == 0) { rotation = 270; }
|
||||
barcodeimage = Barcode.Get_LinerBarcode(Barcoded.Symbology.I2of5, docData.Dokumentid.Substring(6, 16), docData.Dokumentid.Substring(6, 16)+docData.barcode_zusatz, docData.barcode_textposition, docData.Zusatz_Font, Convert.ToInt32(docData.Zusatz_FontSize),0);
|
||||
//barcodeimage = ScaleImage(barcodeimage, docData.barcode_width, docData.barcode_height);
|
||||
//barcodeimage = resizeImage(barcodeimage, new Size(docData.barcode_width,docData.barcode_height));
|
||||
|
||||
break;
|
||||
case "1":
|
||||
|
||||
//BarcodeLibVBDatamatrix.MW6Datamatrix dm = new BarcodeLibVBDatamatrix.MW6Datamatrix();
|
||||
//dm.Generage_BarcodeImage(ref docData, @"h:\tssettings\edoka\");
|
||||
//barcodeimage = System.Drawing.Image.FromFile(@"h:\tssettings\edoka\a_" + docData.Dokumentid + ".png");
|
||||
//System.IO.File.Delete(@"h:\tssettings\edoka\a_" + docData.Dokumentid + ".png");
|
||||
//barcodeimage = Barcode.Get_Datamatrix(DataMatrix.net.DmtxScheme.DmtxSchemeAutoBest, docData.barcode_content, 4, 0, 0, "Left", docData.barcode_content, docData.barcode_font, docData.barcode_fontsize);
|
||||
|
||||
barcodeimage = Barcode.Get_Datamatrix(DataMatrix.net.DmtxScheme.DmtxSchemeAscii,docData.barcode_content, 6, 6, 0, "Right", docData.barcode_text+docData.barcode_zusatz, docData.Zusatz_Font, docData.Zusatz_FontSize);
|
||||
barcodeimage = AutoSizeImage(barcodeimage, docData.barcode_width, docData.barcode_height, false);
|
||||
//barcodeimage= resizeImage(barcodeimage, new Size(docData.barcode_width, docData.barcode_height));
|
||||
barcodeimage = ScaleImage(barcodeimage, docData.barcode_width,docData.barcode_height);
|
||||
//barcodeimage = ScaleImage(barcodeimage, docData.barcode_width,docData.barcode_height);
|
||||
//barcodeimage.Save(@"x:\bctest.png");
|
||||
|
||||
break;
|
||||
@@ -743,8 +844,8 @@ namespace DOCGEN.Klassen
|
||||
else
|
||||
{
|
||||
picture.Rotation = 0;
|
||||
// picture.Height = docData.barcode_height;
|
||||
// picture.Width = docData.barcode_width;
|
||||
//picture.Height = docData.barcode_height;
|
||||
//picture.Width = docData.barcode_width;
|
||||
picture.VerticalPosition = docData.barcode_top; ;
|
||||
picture.HorizontalPosition = docData.barcode_left;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user