Update 20250606
This commit is contained in:
@@ -119,7 +119,7 @@ if (docdata.Bezeichnung.Contains("QDF"))
|
||||
dt.Rows[0][0] = fh.Base64FromFile(filename);
|
||||
ws = null;
|
||||
}
|
||||
dok.dokument = sfword.Generate_Word(dt.Rows[0][0].ToString(), docdata);
|
||||
dok.dokument = sfword.Generate_Word(dt.Rows[0][0].ToString(), docdata,"","","",false,editdoc);
|
||||
Logging.Logging.Debug("Generate_Word", "Ende", dokumentid);
|
||||
Thread.Sleep(OfficeSleep);
|
||||
}
|
||||
|
||||
@@ -226,7 +226,7 @@ namespace DOCGEN.Klassen
|
||||
// signature.OwnerParagraph.AppendPicture(img);
|
||||
mssign = null;
|
||||
}
|
||||
public string Generate_Word(string base64, clsDocData docdata, string img_UL = "", string img_UR = "", string img_faktura = "", bool serienbrief=false)
|
||||
public string Generate_Word(string base64, clsDocData docdata, string img_UL = "", string img_UR = "", string img_faktura = "", bool serienbrief=false, bool editdoc=false)
|
||||
{
|
||||
string formattype = "";
|
||||
MemoryStream ms = new MemoryStream(Helper.EncodeExtensions.DecodeBase642ByteArray(base64));
|
||||
@@ -275,7 +275,8 @@ namespace DOCGEN.Klassen
|
||||
|
||||
if (docdata.Barcode == true)
|
||||
{
|
||||
Insert_Barcode(document, docdata);
|
||||
//20250531 - Barcode nicht beim Serienbrief
|
||||
if (!serienbrief && !editdoc) Insert_Barcode(document, docdata);
|
||||
}
|
||||
if (docdata.PrintLogo == true)
|
||||
{
|
||||
@@ -543,26 +544,56 @@ namespace DOCGEN.Klassen
|
||||
}
|
||||
if (dm.BookMark != "")
|
||||
{
|
||||
string variable = "";
|
||||
string inhalt = "";
|
||||
|
||||
if (dm.BookMark.Contains(":"))
|
||||
{
|
||||
string phrase = dm.BookMark;
|
||||
string[] parts = phrase.Split(':');
|
||||
variable= parts[0];
|
||||
inhalt= parts[1];
|
||||
} else { }
|
||||
|
||||
|
||||
if (document.ProtectionType == ProtectionType.NoProtection)
|
||||
{
|
||||
WParagraph paragraph = document.Sections[0].Paragraphs[0] as WParagraph;
|
||||
//BookmarkStart bookmarkStart = new BookmarkStart(document, dm.BookMark);
|
||||
//paragraph.Items.Insert(0, bookmarkStart);
|
||||
|
||||
BookmarkStart bookmarkStart = new BookmarkStart(document, dm.BookMark);
|
||||
BookmarkEnd bookmarkEnd = new BookmarkEnd(document, dm.BookMark);
|
||||
paragraph.Items.Insert(0, bookmarkStart);
|
||||
paragraph.Items.Insert(2, bookmarkEnd);
|
||||
|
||||
if (variable != "")
|
||||
{
|
||||
try
|
||||
{
|
||||
document.Variables.Add(variable, inhalt);
|
||||
}
|
||||
catch { }
|
||||
}
|
||||
if (variable == "")
|
||||
{
|
||||
WParagraph paragraph = document.Sections[0].Paragraphs[0] as WParagraph;
|
||||
BookmarkStart bookmarkStart = new BookmarkStart(document, dm.BookMark);
|
||||
BookmarkEnd bookmarkEnd = new BookmarkEnd(document, dm.BookMark);
|
||||
paragraph.Items.Insert(0, bookmarkStart);
|
||||
paragraph.Items.Insert(1, bookmarkEnd);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
document.Protect(ProtectionType.NoProtection, "Australia");
|
||||
WParagraph paragraph = document.Sections[0].Paragraphs[0] as WParagraph;
|
||||
BookmarkStart bookmarkStart = new BookmarkStart(document, dm.BookMark);
|
||||
BookmarkEnd bookmarkEnd = new BookmarkEnd(document, dm.BookMark);
|
||||
paragraph.Items.Insert(0, bookmarkStart);
|
||||
paragraph.Items.Insert(2, bookmarkEnd);
|
||||
if (variable != "")
|
||||
{
|
||||
try
|
||||
{
|
||||
document.Variables.Add(variable, inhalt);
|
||||
}
|
||||
catch { }
|
||||
}
|
||||
if (variable == "")
|
||||
{
|
||||
WParagraph paragraph = document.Sections[0].Paragraphs[0] as WParagraph;
|
||||
BookmarkStart bookmarkStart = new BookmarkStart(document, dm.BookMark);
|
||||
BookmarkEnd bookmarkEnd = new BookmarkEnd(document, dm.BookMark);
|
||||
paragraph.Items.Insert(0, bookmarkStart);
|
||||
paragraph.Items.Insert(1, bookmarkEnd);
|
||||
}
|
||||
document.Protect(ProtectionType.AllowOnlyFormFields, "Australia");
|
||||
}
|
||||
}
|
||||
@@ -885,7 +916,112 @@ namespace DOCGEN.Klassen
|
||||
}
|
||||
}
|
||||
|
||||
public System.Drawing.Image Get_Barcodeimage(clsDocData docData)
|
||||
{
|
||||
System.Drawing.Image barcodeimage;
|
||||
BarcodeLib.Barcode Barcode = new BarcodeLib.Barcode();
|
||||
switch (docData.barcode_type)
|
||||
{
|
||||
case "0":
|
||||
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);
|
||||
BarcodeLib.clsBarI25 barbarcode = new BarcodeLib.clsBarI25();
|
||||
if (docData.barcode_horizontal == 0)
|
||||
{
|
||||
barcodeimage = barbarcode.GetBarI25(Color.Black, Color.White, docData.Dokumentid.Substring(6, 16), "Bar 25i c HR", 66, 600, 100, docData.barcode_zusatz, "Futur Book", 16, 270);
|
||||
}
|
||||
else
|
||||
{
|
||||
barcodeimage = barbarcode.GetBarI25(Color.Black, Color.White, docData.Dokumentid.Substring(6, 16), "Bar 25i c HR", 66, 600, 100, docData.barcode_zusatz, "Futur Book", 16, 0);
|
||||
}
|
||||
//barcodeimage = Barcode.Get_LinerBarcode(Barcoded.Symbology.I2of5C, docData.Dokumentid.Substring(9, 13), docData.Dokumentid.Substring(6, 16) + docData.barcode_zusatz, docData.barcode_textposition, docData.barcode_font, Convert.ToInt32(docData.barcode_fontsize), 0);
|
||||
|
||||
return barcodeimage;
|
||||
break;
|
||||
case "1":
|
||||
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);
|
||||
return barcodeimage;
|
||||
break;
|
||||
default:
|
||||
barcodeimage = Barcode.Get_LinerBarcode(Barcoded.Symbology.I2of5C, docData.Dokumentid.Substring(9, 13), docData.Dokumentid.Substring(6, 16) + docData.barcode_zusatz, docData.barcode_textposition, docData.barcode_font, Convert.ToInt32(docData.barcode_fontsize), 0);
|
||||
return barcodeimage;
|
||||
break;
|
||||
}
|
||||
// System.Drawing.Image barcodeimage = Barcode.Get_LinerBarcode(Barcoded.Symbology.I2of5C, docData.Dokumentid.Substring(9, 13), docData.Dokumentid.Substring(9, 13), docData.barcode_textposition "Below", "Arial", 6, 0);
|
||||
|
||||
}
|
||||
public void Insert_Barcode(WordDocument document, clsDocData docData)
|
||||
{
|
||||
System.Drawing.Image barcodeimage;
|
||||
barcodeimage = Get_Barcodeimage(docData);
|
||||
System.Drawing.Image barcodeimage2;
|
||||
barcodeimage2 = barcodeimage;
|
||||
|
||||
|
||||
|
||||
WPicture picture = new WPicture(document);
|
||||
WPicture picture2 = new WPicture(document);
|
||||
picture.LoadImage(barcodeimage);
|
||||
picture2.LoadImage(barcodeimage);
|
||||
|
||||
picture.VerticalPosition = docData.barcode_left;
|
||||
picture.HorizontalPosition = docData.barcode_top;
|
||||
picture.HorizontalOrigin = HorizontalOrigin.Page;
|
||||
picture.VerticalOrigin = VerticalOrigin.Page;
|
||||
picture.TextWrappingStyle = TextWrappingStyle.Square;
|
||||
picture.TextWrappingType = TextWrappingType.Largest;
|
||||
picture2.VerticalPosition = docData.barcode_left;
|
||||
picture2.HorizontalPosition = docData.barcode_top;
|
||||
picture2.HorizontalOrigin = HorizontalOrigin.Page;
|
||||
picture2.VerticalOrigin = VerticalOrigin.Page;
|
||||
picture2.TextWrappingStyle = TextWrappingStyle.Square;
|
||||
picture2.TextWrappingType = TextWrappingType.Largest;
|
||||
|
||||
if (docData.barcode_horizontal == 0)
|
||||
{
|
||||
picture.Rotation = 0;
|
||||
picture.Height = docData.barcode_height; ;
|
||||
picture.Width = docData.barcode_width;
|
||||
picture.VerticalPosition = docData.barcode_top; ;
|
||||
picture.HorizontalPosition = docData.barcode_left;
|
||||
picture2.Rotation = 0;
|
||||
picture2.Height = docData.barcode_height; ;
|
||||
picture2.Width = docData.barcode_width;
|
||||
picture2.VerticalPosition = docData.barcode_top; ;
|
||||
picture2.HorizontalPosition = docData.barcode_left;
|
||||
}
|
||||
else
|
||||
{
|
||||
picture.Rotation = 0;
|
||||
picture.Height = docData.barcode_height;
|
||||
picture.Width = docData.barcode_width;
|
||||
picture.VerticalPosition = docData.barcode_top; ;
|
||||
picture.HorizontalPosition = docData.barcode_left;
|
||||
picture2.Rotation = 0;
|
||||
picture2.Height = docData.barcode_height;
|
||||
picture2.Width = docData.barcode_width;
|
||||
picture2.VerticalPosition = docData.barcode_top; ;
|
||||
picture2.HorizontalPosition = docData.barcode_left;
|
||||
}
|
||||
if (docData.barcode_type == "0")
|
||||
{
|
||||
}
|
||||
|
||||
//foreach (IWSection section in document.Sections)
|
||||
//{
|
||||
IWSection section = document.Sections[0];
|
||||
if (section.PageSetup.DifferentFirstPage == true)
|
||||
{
|
||||
WParagraph FirstfooterPar = new WParagraph(document);
|
||||
FirstfooterPar.ChildEntities.Add(picture);
|
||||
section.HeadersFooters.FirstPageFooter.Paragraphs.Add(FirstfooterPar);
|
||||
}
|
||||
WParagraph footerPar = new WParagraph(document);
|
||||
footerPar.ChildEntities.Add(picture2);
|
||||
section.HeadersFooters.Footer.Paragraphs.Add(footerPar);
|
||||
//}
|
||||
}
|
||||
public void xInsert_Barcode(WordDocument document, clsDocData docData)
|
||||
{
|
||||
System.Drawing.Image barcodeimage;
|
||||
BarcodeLib.Barcode Barcode = new BarcodeLib.Barcode();
|
||||
@@ -894,7 +1030,6 @@ namespace DOCGEN.Klassen
|
||||
case "0":
|
||||
//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);
|
||||
|
||||
BarcodeLib.clsBarI25 barbarcode = new BarcodeLib.clsBarI25();
|
||||
//barcodeimage = barbarcode.GetBarI25(Color.Black, Color.White, docData.Dokumentid.Substring(6, 16), "Bar 25i c HR", 36, 350, 50, " "+docData.barcode_zusatz, docData.Zusatz_Font, Convert.ToInt32(docData.Zusatz_FontSize), 0);
|
||||
@@ -906,16 +1041,17 @@ namespace DOCGEN.Klassen
|
||||
|
||||
if (docData.barcode_horizontal == 0)
|
||||
{
|
||||
barcodeimage = barbarcode.GetBarI25(Color.Black, Color.White, docData.Dokumentid.Substring(6, 16), "Bar 25i c HR", 33, 300, 50, docData.barcode_zusatz, "Futur Book", 8,270);
|
||||
barcodeimage = barbarcode.GetBarI25(Color.Black, Color.White, docData.Dokumentid.Substring(6, 16), "Bar 25i c HR", 66, 600, 100, docData.barcode_zusatz, "Futur Book", 16,0);
|
||||
//barcodeimage = barbarcode.GetBarI25(Color.Black, Color.White, docData.Dokumentid.Substring(6, 16), "Bar 25i c HR", 33, 429, 52, docData.barcode_zusatz, "Futur Book", 8, 270);
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
barcodeimage = barbarcode.GetBarI25(Color.Black, Color.White, docData.Dokumentid.Substring(6, 16), "Bar 25i c HR", 33, 300, 50, docData.barcode_zusatz, "Futur Book", 8, 0);
|
||||
barcodeimage = barbarcode.GetBarI25(Color.Black, Color.White, docData.Dokumentid.Substring(6, 16), "Bar 25i c HR", 66, 600, 100, docData.barcode_zusatz, "Futur Book", 16, 0);
|
||||
//barcodeimage = barbarcode.GetBarI25(Color.Black, Color.White, docData.Dokumentid.Substring(6, 16), "Bar 25i c HR", 33, 429, 52, docData.barcode_zusatz, "Futur Book", 8, 0);
|
||||
|
||||
}
|
||||
//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));
|
||||
@@ -947,6 +1083,7 @@ namespace DOCGEN.Klassen
|
||||
|
||||
WPicture picture = new WPicture(document);
|
||||
picture.LoadImage(barcodeimage);
|
||||
|
||||
//picture.Height = docData.barcode_height;
|
||||
|
||||
//picture.Width = docData.barcode_width;
|
||||
@@ -961,9 +1098,9 @@ namespace DOCGEN.Klassen
|
||||
//picture.Height = barcodeimage.Height;
|
||||
if (docData.barcode_horizontal == 0)
|
||||
{
|
||||
picture.Rotation = 0;
|
||||
// picture.Height = docData.barcode_width;
|
||||
//picture.Width = docData.barcode_height;
|
||||
picture.Rotation = 270;
|
||||
picture.Height = docData.barcode_height; ;
|
||||
picture.Width = docData.barcode_width;
|
||||
picture.VerticalPosition = docData.barcode_top; ;
|
||||
picture.HorizontalPosition = docData.barcode_left;
|
||||
|
||||
@@ -994,11 +1131,11 @@ namespace DOCGEN.Klassen
|
||||
section.HeadersFooters.Footer.AddParagraph().ChildEntities.Add(picture);
|
||||
section.HeadersFooters.FirstPageFooter.AddParagraph().ChildEntities.Add(picture2);
|
||||
|
||||
if (section.HeadersFooters.FirstPageFooter.Paragraphs.Count < 1)
|
||||
{
|
||||
section.HeadersFooters.FirstPageFooter.AddParagraph();
|
||||
section.HeadersFooters.FirstPageFooter.Paragraphs[0].ChildEntities.Add(picture);
|
||||
}
|
||||
//if (section.HeadersFooters.FirstPageFooter.Paragraphs.Count < 1)
|
||||
//{
|
||||
section.HeadersFooters.FirstPageFooter.AddParagraph();
|
||||
section.HeadersFooters.FirstPageFooter.Paragraphs[0].ChildEntities.Add(picture);
|
||||
//}
|
||||
|
||||
|
||||
Syncfusion.DocIO.DLS.IWParagraph paragraph = section.Body.LastParagraph;
|
||||
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -117,6 +117,8 @@ namespace DOCGEN
|
||||
return Convert.ToBase64String(bytes);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
public string generate_serienbrief(string vorlage,serienbrief sb, string dokumentid, string resturi, string apikey)
|
||||
{
|
||||
SyncFWord sfword = new SyncFWord(resturi,apikey);
|
||||
@@ -145,8 +147,45 @@ namespace DOCGEN
|
||||
dd.barcode_text = sb.barcode_text;
|
||||
|
||||
dok.dokument = sfword.Generate_Word(vorlage,dd, sb.img_unterschriftlinks,sb.img_unterschrfitrechts,sb.img_faktura,true);
|
||||
DocGet dget = new DocGet(this.connectionstring);
|
||||
string pdfdoc = dget.Convert_Word_To_PDF(dok.dokument);
|
||||
if (dd.Barcode)
|
||||
{
|
||||
|
||||
System.Drawing.Image barcode = sfword.Get_Barcodeimage(dd);
|
||||
|
||||
var stream = new MemoryStream(Convert.FromBase64String(pdfdoc));
|
||||
PdfLoadedDocument loadedDocument = new PdfLoadedDocument(stream);
|
||||
PdfBitmap image = new PdfBitmap(barcode);
|
||||
for (int i = 0; i < loadedDocument.Pages.Count; i++)
|
||||
{
|
||||
PdfLoadedPage loadedPage = loadedDocument.Pages[i] as PdfLoadedPage;
|
||||
PdfGraphics graphics = loadedPage.Graphics;
|
||||
if (dd.barcode_horizontal == 1)
|
||||
{
|
||||
graphics.DrawImage(image, dd.barcode_left, dd.barcode_top, dd.barcode_width, dd.barcode_height);
|
||||
}
|
||||
else
|
||||
{
|
||||
graphics.DrawImage(image, dd.barcode_left, dd.barcode_top, dd.barcode_width, dd.barcode_height);
|
||||
}
|
||||
}
|
||||
loadedDocument.ConvertToPDFA(PdfConformanceLevel.Pdf_A1B);
|
||||
MemoryStream outputStream = new MemoryStream();
|
||||
loadedDocument.Save(outputStream);
|
||||
byte[] bytes;
|
||||
bytes = outputStream.ToArray();
|
||||
dok.dokument = Convert.ToBase64String(bytes);
|
||||
dget = null;
|
||||
outputStream = null;
|
||||
|
||||
} else
|
||||
{
|
||||
dok.dokument = pdfdoc;
|
||||
}
|
||||
db = null;
|
||||
dok.doktype = "W";
|
||||
|
||||
dok.doktype = "P";
|
||||
|
||||
sfword = null;
|
||||
return dok.dokument;
|
||||
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Reference in New Issue
Block a user