Important Notes: 1. Users must have the administrator or power user privilege to install eDocPrinter PDF Pro. 2. eDocPrinter PDF Pro works like an Printer Driver. Users can print from applications to convert to PDF files by selecting and printing to the eDocPrinter PDF Pro printer instance. 3. For installing and using in Windows 11/10/8.1/8/Vista/7/XP workstations, it requires workstation licenses (WKSLIC) installed. 4. For installing and using by remote desktop, remote administrating, or remote sessions in Windows server 2022/2019/2016/2012/2008, it requires either terminal server client license (TSECLI, named users) or terminal server per-server license (TSESVR, per-server) installed. 5. For generic Windows server batch processing (service printing, non-logon sessions, or web integration) or printer server usage in Windows server 2022/2019/2016/2012/2008, it requires INTRASVR/INTERSVR (per-server). 6. The unregistered version is a FULL function version. For unregistered version, it will stamp trial watermarks with hyperlinks for purchasing on PDF generated on every page. Users will get registration key information after purchasing eDocPrinter PDF Pro. By entering it to activate on the About page, it will be turned into a registered one. And no more trial watermarks or extra hyperlinks will be added into the PDF generated after the registration key is properly activated. 7. Unregistered version of Advanced toolboxes (Drag2PDF and etc.) Enterprise toolboxes (PDFSealer and etc.) may pop nag dialogs when doing conversion or stamp trial watermarks for processing PDFs. Users require proper eDocPrinter PDF Adv. or Ent. Pack License or standalone toolbox license to turn it into a registered version. ============================================================= Release Notes Legends: [+] New Feature [-] Bug Fixed [!] Feature - Improvements and Behaviour Changes [a..zA..Z] Feature Category [EPDFPRO]: (Pro. Pack) eDocPrinter PDF Pro Printer driver + Standard Office Addins (Word, Excel, PPT) [EPDFADV]: (Adv. Pack) EPDFPRO + Adv. Toolboxes (Drag2PDF, Shell Extension, Redirect2Print Addin, Command2Action Addin, Text2Hash Addin, AES Addin, and various advanced features and addins) [EPDFENT]: (Ent. Pack) EPDFADV + Ent. Toolboxes (PDFSealer for LTV Digital Signing and PDF Certifying, FTP/SFTP/S3/OneDrive/GoogleDrive Cloud Upload Addin, SMTP-SSL/SMTP-TLS/SMTP-Gmail Addins, OWA Addin (Outlook365 Web App OAuth2/SMTP-XOAUTH2), Gmail Addin (Gmail Web App by OAuth2/Gmail SMTP-XOAUTH2), and etc.) ============================================================= ============================================================= 2024-05-27 0. Ver 9.70 Build 9703 (Ent. Pack - EPDFENT) [+] 1. [Email- Send by Gmail Web App]: (EmailSendMethod: 13) Add a new method for sending email by Gmail Web App (OWA OAuth 2.0 authorization). It will launch the Gmail composing window in the Browser for the user to review or click to send. [+] 2. [Email- Send by Gmail API]: (EmailSendMethod: 14) Add a new method for sending email by Gmail API (OWA OAuth 2.0 authorization) directly. It will not launch the Gmail composing window. It only launches the browser for requesting OAuth 2.0 authorization. When EmailNotSubmit is True, it will save the email into Drafts of the GmailAccount. [+] 3. [Email- EmailGAppID]: Add a registry setting and embedded command EmailGAppID for specifying the App ID (Client ID) for accessing the Google API resources. By default, it is automatically assigned as the registered public Application ID of eDocPrinter Cloud-Addon for Gmail. For a high security level, users may create and use their own registered Google OAuth2 App ID in their organization directory (tenant) for Gmail automation flow. [+] 4. [Email- EmailGAppSecret]: Add a registry setting and embedded command EmailGAppSecret for specifying the App secret (Client secret) for accessing the Google API resources. By default, it is not necessary for Browser based Authorization Code Grant. For a high security level, users may assign their own secret for their own registered Google OAuth2 App in their organization directory. [+] 5. [Email- EmailGPermScope]: Add a registry setting and embedded command EmailGPermScope for specifying the permission scope to request to access Google APIs for granting authorization. The default scope for requesting is https://www.googleapis.com/auth/gmail.modify to allow to compose and send emails by the account authorized. [+] 6. [Email- Send email by Gmail SMTP-TLS XOAUTH2]: (EmailSendMethod: 15) Add a new method for sending email by Gmail SMTP server using XOAUTH2 authentication. (Using the Access Token from OAuth 2.0 Authorization for SMTP authentication.) Gmail SMTP server requires a full permission scope https://mail.google.com/ (EmailGPermScope) for SMTP-TLS XOAUTH2. [+] 7. [FTP/Cloud- Upload by Google Drive]: (FTPMethod: 7) Add a new method for uploading files to Google Drive by Google Cloud API with OAuth 2.0 authentication. [+] 8. [FTP/Cloud- FTPGAppID]: Add a registry setting and embedded command FTPGAppID for specifying the App ID (Client ID) for accessing the Google resources. By default, it is automatically assigned using the registered OAuth2 App ID of eDocPrinter Cloud-Addon for Google Drive. For a high security level, users may create and use their own registered Google OAuth2 Client ID and secret in their organization directory for the uploading automation flow. [+] 9. [FTP/Cloud- FTPGAppSecret]: Add a registry setting and embedded command FTPGAppSecret for specifying the App secret (Client secret) for accessing the Google Cloud resources. For a high security level, users may assign their own secret with their own registered Google OAuth2 Client ID (App ID) in their organization directory. [+] 10. [FTP/Cloud- FTPGPermScope]: Add a registry setting and embedded command FTPGPermScope for specifying the permission scope to request to access Google APIs for granting authorization. The default scope for requesting is https://www.googleapis.com/auth/drive to allow to create folders and upload files by the account authorized. [+] 11. [FTP/Cloud- FTPOverwrite]: Add a registry setting and embedded command FTPOverwrite with default value True. When uploading to Google Drive, if the filename is existing in the upload folder path specified, it will update(overwrite) the file as a new version (google drive will automatically keep the old file by versions). When it is False, it will be uploaded as a new file using the same filename specified and a different Google FileID. In such cases, Google Drive list multiple files with the same filename. [!] 12. [Email- EmailBrowserProfileEmail]: In Send by Gmail modes, the registry setting and command EmailBrowserProfileEmail for specifying the browser profile to launch for OAuth2 granting authorization or showing web composing UI by Gmail API (Gmail Web App). In Chrome browser, it is usually the Google Account email address for signing in Chrome. [!] 13. [Email- EmailBrowserProfileByFrom]: In Send by Gmail modes, the registry setting and command EmailBrowserProfileByFrom with the default value False. When it is True, it will use the email address specified by EmailFrom for the browser profile to launch for granting authorization or showing web composing UI as described by the command EmailBrowserProfileByFrom. [!] 14. [Email- EmailBrowserProfileDir]: In Send by Gmail modes, the registry setting and command EmailBrowserProfileDir for specifying the profile directory to launch for granting authorization or showing web composing UI. For Chromium based browsers (Chrome/Edge), it is the physical directory name for storing the browser profile data. It is not the profile name(alias) showing in the browser title or toolbar. It is only effective when EmailBrowserProfileEmail is empty or not specified. EmailBrowserProfileEmail is recommended for launching browser with the profile. [!] 15. [Email- EmailBrowserSwitches]: In Send by Gmail modes, the registry setting and command EmailBrowserSwitches specifies extra arguments/parameters of the command line for launching the browser for granting authorization or showing web composing UI. [!] 16. [Email- EmailOAuth2Cache]: In Send by Gmail modes, the registry setting and command EmailOAuth2Cache with its default value True enable caching and refreshing the OAuth 2.0 authorization token. [!] 17. [Email- EmailOAuth2ReAuth]: ]: In Send by Gmail modes, the registry setting and command EmailOAuth2ReAuth with its default value False. When it is True, it will submit a new request to ask for granting authorization by OAuth 2.0 without using cached info. [!] 18. [Email- EmailOAuth2Browser]: In Send by Gmail modes, the registry setting and command EmailOAuth2Browser for specifying the Browser type to use for granting authorization. [0: default, 1: Edge browser, 2: Chrome browser] The default is launching the Windows built-in Edge browser. [!] 19. [Email- EmailOAuth2ListenPort]: In Send by OAuth 2.0 modes (Outlook 365/Gmail), it will automatically select the port available in the range from EmailOAuth2ListenPort for OAuth 2.0 Authorization Callback flow. [!] 20. [Email- EmailSMTPUserName]: In Send by SMTP-TLS by XOAuth 2.0 modes (Outlook 365/Gmail), if the EmailSMTPUserName is not set(empty), the EmailFrom address will be used as the username for SMTP XOAUTH2 authentication. [!] 21. [Email- ]: Update resources [!] 22. [FTP/Cloud- FTPBrowserProfileEmail]: In Upload by Google Drive mode, the registry setting and command FTPBrowserProfileEmail for specifying the browser profile to launch for granting authorization when uploading PDF files or related data by OAuth 2.0 API. In Edge browser, the email address is usually the Microsoft personal/work account signing in the browser for syncing Microsoft 365. In Chrome browser, it is usually the Google Account email address for signing in Chrome. [!] 23. [FTP/Cloud- FTPBrowserProfileByFrom]: In Upload by Google Drive mode, the registry setting and command FTPBrowserProfileByFrom with the default value False. When it is True, it will use the FTPUserName as the email address for launching the browser using the profile matching the email for granting authorization. [!] 24. [FTP/Cloud- FTPBrowserProfileDir]: In Upload by Google Drive mode, the registry setting and command FTPBrowserProfileDir for specifying the profile directory to launch for granting authorization for uploading. For Chromium based browsers (Chrome/Edge), it is the physical directory name for storing the browser profile data. It is not the profile name(alias) showing in the browser title or toolbar. It is only effective when FTPBrowserProfileEmail is empty or not specified. FTPBrowserProfileEmail is recommended for launching the browser with the profile. [!] 25. [FTP/Cloud- FTPBrowserSwitches]: In Upload by Google Drive mode, the registry setting and command FTPBrowserSwitches for specifying extra arguments/parameters launch the browser for granting authorization for uploading. [!] 26. [FTP/Cloud- FTPOAuth2Cache]: In Upload by Google Drive mode, the registry setting and command FTPOAuth2Cache with the default value True for caching and refreshing the OAuth 2.0 authorization token for cloud uploading. [!] 27. [FTP/Cloud- FTPOAuth2ReAuth]: In Upload by Google Drive mode, the registry setting and command FTPOAuth2ReAuth with the default value False. When it is True, it will submit a new request to ask for granting authorization by OAuth 2.0 without using cached info. [!] 28. [FTP/Cloud- FTPOAuth2Browser]: In Upload by Google Drive mode, the registry setting and command FTPOAuth2Browser for specifying the Browser type to use for granting authorization. [0: default, 1: Edge browser, 2: Chrome browser] [!] 29. [FTP/Cloud- ]: Update resources [-] 30. [Digital Signature/PDFSealer- Certificates]: Fix creating self-signed certificate with serial number (random generated) of leading octet zero or leading MSB of 1 (asn.1 decoding error in acrobat reader signature validation) ============================================================= 2024-04-02 0. Ver 9.64 Build 9649 (Ent. Pack - EPDFENT) [+] 1. [Digital Signature- ]: Add the UI option for selecting the certificate source [Load from the Windows certificate store], [Load from the Smart card/USB token], and [Load from the PFX file] for digitally signing the PDF file. The corresponding registry setting and command is [DestSignCertSrc] with the corresponding value 0/1/2. This option overrides the option [DestSignSmartCard] in Ver 9.54. When set it to 1, it will use the certificate in the smartcard/USB token to digitally sign the PDF file. Some smart cards/USB tokens may require installing its own Windows driver first if the devices are not compatible with Windows built-in drivers. When set to 2 (selecting [Load from the PFX file]), it will use the certificate in the PFX file specified for signing. [+] 2. [Digital Signature- ]: Add the UI option to browse to select the PFX filepath when selecting the mode [Load from the PFX file]. Its registry setting and command is [DestSignPfxPath] for specifying the path of the PFX file for loading the certificate when applying digital signature in the mode [Load from the PFX file]. [+] 3. [PDFSealer UI- ]: Add the UI option for selecting the certificate source [Load from the Windows certificate store], [Load from the Smart card/USB token], and [Load from the PFX file] for digitally signing the PDF file. This UI option replaces the checkbox [Use the certificate directly from the Smart card/USB token] in Ver 9.54. When selecting [Load from the Smart card/USB token], it will use the certificate in the smart card/USB token to digitally sign the PDF file. Some smart cards/USB tokens may require installing its own Windows driver first if the devices are not compatible with Windows built-in drivers. When selecting [Load from the PFX file], it will use the certificate in the PFX file specified for signing. [+] 4. [PDFSealer UI- ]: Add the UI option to browse to select the PFX filepath when selecting the mode [Load from the PFX file]. [+] 5. [Digital Signature- ]: Add the LTV(Long Term Validation) support when digitally signing the PDF file with timestamping by TSA(Time Stamp Authority). The corresponding registry setting and command is [DestSignLTV] with the default value True. By default, when digitally signing a PDF file with timestamping of TSA, the LTV information is included and signed with the document digest to ensure long time validation of the PDF and PDF/A standard. (LTV requires digital signatures with countersigned timestamps) The LTV(Long Term Validation) adds status of validating certificates by submitting OCSP(Online Certificate Status Protocol) requests to the issuer of certificates when signing to ensure the certificate is valid (not revoked) at the time of signing. [+] 6. [PDFSealer UI- ]: Add the LTV(Long Term Validation) support when digitally signing the PDF file with timestamping by TSA(Time Stamp Authority). The corresponding registry setting and command is [DestSignLTV] with the default value True. By default, when digitally signing a PDF file with timestamping of TSA, the LTV information is included and signed with the document digest to ensure long time validation of the PDF and PDF/A standard. (LTV requires digital signatures with countersigned timestamps) The LTV(Long Term Validation) adds status of validating certificates by submitting OCSP(Online Certificate Status Protocol) requests to the issuer of certificates when signing to ensure the certificate is valid (not revoked) at the time of signing. [+] 7. [PDFSealer UI- ]: Add a registry setting SigSaveUpdate with default value True. When it is True, the PDF is incrementally updated when stamping the digital signature for supporting to countersign by multiple people in the workflow. (DestSignUpdate) [!] 8. [Digital Signature- ]: The registry setting and command DestSignCertPasswd is also used for modes [Load from the Smart card/USB token] and [Load from the PFX file] mode for workflow automation. [+] 9. [Email- EmailBrowserProfileEmail]: Add a registry setting and embedded command EmailBrowserProfileEmail for specifying the browser profile to launch for granting authorization or showing web composing UI in sending emails by OAuth 2.0 web or API (Outlook 365 Web App). In Edge browser, the email address is usually the Microsoft personal/work account signing in the browser for syncing Microsoft 365. In Chrome browser, it is usually the Google Account email address for signing in Chrome. [+] 10. [Email- EmailBrowserProfileByFrom]: Add a registry setting and embedded command EmailBrowserProfileByFrom with the default value False. When it is True, it will use the email address specified by EmailFrom for the the browser profile to launch for granting authorization or showing web composing UI as described by the command EmailBrowserProfileByFrom. [+] 11. [Email- EmailBrowserProfileDir]: Add a registry setting and embedded command EmailBrowserProfileDir for specifying the profile directory to launch for granting authorization or showing web composing UI. For Chromium based browsers (Chrome/Edge), it is the physical directory name for storing the browser profile data. It is not the profile name(alias) showing in the browser title or toolbar. It is only effective when EmailBrowserProfileEmail is empty or not specified. EmailBrowserProfileEmail is recommended for launching browser with the profile. [+] 12. [Email- EmailBrowserSwitches]: Add a registry setting and embedded command EmailBrowserSwitches for specifying extra arguments/parameters launch the browser for granting authorization or showing web composing UI. [+] 13. [Email- EmailOAuth2Cache]: Add a registry setting and embedded command EmailOAuth2Cache with the default value True for caching and refreshing the OAuth 2.0 authorization token. [+] 14. [Email- EmailOAuth2ReAuth]: Add a registry setting and embedded command EmailOAuth2ReAuth with the default value False. When it is True, it will submit a new request to ask for granting authorization by OAuth 2.0 without using cached info. [+] 15. [FTP/Cloud- FTPBrowserProfileEmail]: Add a registry setting and embedded command FTPBrowserProfileEmail for specifying the browser profile to launch for granting authorization when uploading PDF files or related data by OAuth 2.0 API (e.g. OneDrive). In Edge browser, the email address is usually the Microsoft personal/work account signing in the browser for syncing Microsoft 365. In Chrome browser, it is usually the Google Account email address for signing in Chrome. [+] 16. [FTP/Cloud- FTPBrowserProfileByFrom]: Add a registry setting and embedded command FTPBrowserProfileByFrom with the default value False. When it is True, it will use the FTPUserName as the email address for launching the browser using the profile matching the email for granting authorization. [+] 17. [FTP/Cloud- FTPBrowserProfileDir]: Add a registry setting and embedded command FTPBrowserProfileDir for specifying the profile directory to launch for granting authorization for uploading. For Chromium based browsers (Chrome/Edge), it is the physical directory name for storing the browser profile data. It is not the profile name(alias) showing in the browser title or toolbar. It is only effective when FTPBrowserProfileEmail is empty or not specified. FTPBrowserProfileEmail is recommended for launching the browser with the profile. [+] 18. [FTP/Cloud- FTPBrowserSwitches]: Add a registry setting and embedded command FTPBrowserSwitches for specifying extra arguments/parameters launch the browser for granting authorization for uploading. [+] 19. [FTP/Cloud- FTPOAuth2Cache]: Add a registry setting and embedded command FTPOAuth2Cache with the default value True for caching and refreshing the OAuth 2.0 authorization token for cloud uploading. (e.g.OneDrive) [+] 20. [FTP/Cloud- FTPOAuth2ReAuth]: Add a registry setting and embedded command FTPOAuth2ReAuth with the default value False. When it is True, it will submit a new request to ask for granting authorization by OAuth 2.0 without using cached info. (Pro. Pack - EPDFPRO) [!] 1. [Dest- SaveAs- Append to]: Improve handling PDF files without pages in [Merge by Append to/Insert before] mode. [!] 2. [About- ]: When in unregistered mode, showing the nag dialog will be in the TopMost mode (About page showing unregistered mode) for focusing users to continue properly. ============================================================= 2024-03-06 0. Ver 9.59 Build 9596 (Pro. Pack - EPDFPRO) [+] 1. [Dest- SaveAs Dailog]: In Win10/11 Common Item SaveAs Dialog mode (DestSaveDlgStyle=0), DestSaveDlgTop is supported to set the SaveAs dialog prompted with TOPMOST style. Its default values is True. (When DestSaveDlgStyle=1, it uses the traditional Explorer-style SaveAs dialog). [+] 2. [Dest- SaveAs Dailog]: In Win10/11 Common Item SaveAs Dialog mode (DestSaveDlgStyle=0), DestSaveDlgFocus is supported to set the SaveAs dialog prompted with FOCUS. Its default values is True. (When DestSaveDlgStyle=1, it uses the traditional Explorer-style SaveAs dialog). ============================================================= 2024-02-26 0. Ver 9.58 Build 9588 (Ent. Pack - EPDFENT) [+] 1. [PDFSealer- Signature Appearance]: Add a registry setting SigAPFontFamily for specifying the font family used signature appearance. The default is Arial. The font used is, by default, embedded. (Pro. Pack - EPDFPRO) [!] 1. [PDF/A-2a/2b/2u- Layers]: In PDF/A mode, when adding layers(Optional Content Groups) by embedded command %%ocbdc, it will not add /AS information (layer states for viewer applications only ) in /OCProperties dictionary for PDF/A compliance. [!] 2. [PDF/A-3a/3b/3u- Layers]: In PDF/A mode, when adding layers(Optional Content Groups) by embedded command %%ocbdc, it will not add /AS information (layer states for viewer applications only ) in /OCProperties dictionary for PDF/A compliance. [!] 3. [PDF/A- Layers]: Set the /Name attribute to Default of the default viewing optional content configuration dictionary. ============================================================= 2024-02-09 0. Ver 9.54 Build 9549 (Ent. Pack - EPDFENT) [+] 1. [Digital Signature- ]: Add the UI option [Use the certificate directly from the Smart card/USB token] for digitally signing the PDF file. The corresponding registry setting and command is [DestSignSmartCard]. When it is True, it will use the certificate in the smart card/USB token to digitally sign the PDF file. Some smart cards/USB tokens may require installing its own Windows driver first if the devices are not compatible with Windows built-in drivers. [+] 2. [PDFSealer UI- ]: Add the UI option [Use the certificate directly from the Smart card/USB token] for digitally signing the PDF file. When it is turned on, it will use the certificate in the Smart card/USB token to digitally sign the PDF file. Some smart cards/USB tokens may require installing its own Windows driver first if the devices are not supported by Windows built-in drivers. [+] 3. [PDF Renderer- ]: Add a registry setting and command [PDFRenderMode] to support rendering the static annotations of the PDF file. The default is 0, the annotations will be rendered(printed) with the PDF content. When the value is 1, it will omit rendering the annotations. [+] 4. [PDF Renderer- Drag2PDF, Redirect2Print]: Support [PDFRenderMode] in the workflow when using PDF-Renderer from Drag2PDF or Redirect2Print. [!] 4. [PDF Renderer- internal]: Improve the interface for calling the PDF-Renderer. (internal) [!] 5. [Resources]: Update the resources for [Digital Signature] and [PDFSealer] UI. (Pro. Pack - EPDFPRO) [+] 1. [Email- Outlook]: Add a timeout for waiting local Outlook.exe to launch when sending by Outlook client in thunking mode. (automate 32bit Outlook in 64bit Windows) (same as DestJobTimeout) [!] 2. [Email- Outlook]: Improve Outlook automation by caching Outlook instance when sending by thunking 32bit local Outlook in 64bit Windows (in queue mode). [!] 3. [Email- Outlook]: Improve logging when sending by thunking 32bit local Outlook in 64bit Windows. [!] 4. [Destination- Job monitor]: Improve job monitor logging in [Process PDF sequentially] mode. (epdfact, epdfmon) [-] 5. [Watermark- ]: Fix a bug not properly stamping image watermarks with path containing Unicode characters. The default now is using UTF8 encoding for all filepath conversion. ============================================================= 2024-01-15 0. Ver 9.47 Build 9477 (Ent. Pack - EPDFENT) [+] 1. [Digital Signature- ]: Support adding a trusted timestamp when digitally signing the PDF file. The timestamp is countersigned by the public Time Stamp Authority (TSA) server. It requires an internet connection to the the public Time Stamp Authority (TSA) server when requesting the timestamp. The default timestamp server is set to http://timestamp.digicert.com. [+] 2. [Digital Signature- ]: Add UI options in the digital signature (PDFSealer) option dialog for turning on or off for adding timestamps and assigning the URL of the Time Stamp Authority (TSA) server. [+] 3. [Digital Signature- ]: The registry settings and embedded commands DestSignTimestamp and DestSignTSAServer are added for the corresponding UI options for enabling adding timestamps and the URL of the Time Stamp Authority (TSA) server. [+] 4. [PDFSealer UI- ]: Support adding a trusted timestamp when digitally signing the PDF file. The timestamp is countersigned by the public Time Stamp Authority (TSA) server. It requires an internet connection to the the public Time Stamp Authority (TSA) server when requesting the timestamp. The default timestamp server is set to http://timestamp.digicert.com. [+] 5. [PDFSealer UI- ]: Support DPI awareness check for high-resolution DPI screen or custom scaling of Remote desktop sessions (SetProcessDpiAwareness). [!] 6. [PDFSealer UI- ]: Set the default resource font to Windows [MS Shell Dlg]. [!] 7. [Digital Signature- PDF internal]: Set the default Filter name to PPKLite (SHA-256, SHA-384, SHA-512) for compliance with the PDF standard. [!] 8. [Digital Signature- Resources]: Update the resources for the timestamp options. [!] 9. [Digital Signature- Certificates]: Set the attribute cryptographic service provider (CSP) of the generated self-signed certificate to Microsoft Base Cryptographic Provider. (Adv. Pack - EPDFADV) [+] 1. [Drag2PDF UI- ]: Support DPI awareness check for high-resolution DPI screen or custom scaling of Remote desktop sessions (SetProcessDpiAwareness). [!] 2. [Drag2PDF UI- ]: Set the default resource font to Windows [MS Shell Dlg]. ============================================================= 2023-12-20 0. Ver 9.36 Build 9368 (Pro. Pack - EPDFPRO) [!] 1. [Resources- ]: Check and set the default resource font to Windows [MS Shell Dlg] [!] 2. [About- Lic Manager]: Improve the license manager. (version date check) (Ent. Pack - EPDFENT) [+] 1. [PDF Renderer- ]: Support rendering the current job PDF to image files (->TIF, ->TIFG3, ->JPG, ->BMP) directly from Redirect2Print by the PDF Renderer Addin. (RedirectPrintMode: 3) (Ent. Pack Licenses required) [+] 2. [PDF Renderer- ]: Support rendering the current job PDF overlaying with the PDF template to image files (->TIF, ->TIFG3, ->JPG, ->BMP) directly from Redirect2Print by the PDF Renderer Addin. (RedirectPrintMode: 3) (Ent. Pack Licenses required) [+] 3. [PDF Renderer- Drag2PDF]: Support rendering generated job PDF files or processed PDF files to image files (->TIF, ->TIFG3, ->JPG, ->BMP) directly from Redirect2Print (RedirectPrintMode: 3) of the Drag2PDF application by the PDF Renderer Addin. (Ent. Pack Licenses required) [!] 4. [About- Lic Manager]: Improve the license manager related to Ent toolbox features [-] 5. [PDF Renderer- ]: Fix a bug on resource management (font) by PDF-Renderer mode. ============================================================= 2023-12-14 0. Ver 9.35 Build 9355 (Ent. Pack - EPDFENT) [+] 1. [PDF Renderer- ]: Add the built-in PDF renderer addin. (Render PDF directly on Device Contexts without calling external PDF readers). [+] 2. [PDF Renderer- ]: Support rendering the current job PDF onto Printer Device Contexts (PrinterDC) directly from Redirect2Print by the PDF Renderer Addin. (RedirectPrintMode: 3) (Ent. Pack Licenses required) [+] 3. [PDF Renderer- ]: Support rendering the current job PDF overlaying with the PDF template onto Printer Device Contexts (PrinterDC) directly from Redirect2Print by the PDF Renderer Addin. (RedirectPrintMode: 3) (Ent. Pack Licenses required) [+] 4. [PDF Renderer- Drag2PDF]: Support rendering generated job PDF files or processed PDF files onto Printer Device Contexts (PrinterDC) directly from Redirect2Print (RedirectPrintMode: 3) of the Drag2PDF application by the PDF Renderer Addin. (Ent. Pack Licenses required) [+] 5. [PDF Renderer- Redirect2PDF]: Support the page scaling modes [Fit to paper size] and [Shrink to paper size] in Redirect2PDF by the PDF Renderer Addin. ============================================================= 2023-05-09 0. Ver 9.06 Build 9069 (Pro. Pack - EPDFPPRO) [-] 1. [DocInfo- ]: Fix time information in Document properties in time zones with daylight saving time. [-] 2. [DocInfo- Metadata]: Fix time information in Document metadata in time zones with daylight saving time. (Adv. Pack - EPDFADV) [-] 1. [Drag2PDF- DocInfo]: Fix time information in Document properties in time zones with daylight saving time. [-] 2. [Drag2PDF- Metadata]: Fix time information in Document metadata in time zones with daylight saving time. (Ent. Pack - EPDFENT) [-] 1. [PDFSealer- ]: Fix time information in Document properties in time zones with daylight saving time.. [-] 2. [PDFSealer- Metadata]: Fix time information in Document metadata in time zones with daylight saving time. ============================================================= 2023-04-28 0. Ver 9.05 Build 9054 (Pro. Pack - EPDFPPRO) [-] 1. [Destination- Merge by Append to/Insert before]: Fix merging PDF files with xref containing multiple non-contiguous subsections. [!] 2. [Watermark- ]: Improve the compatibility of subset-embedding fonts when applying stamping text watermarks.(for some 3rd party embedded PDF renderer, e.g. HP Printer with PDF interprester) Rebuild cmap to exclude GIDs not in the embedding subset. (Adv. Pack - EPDFADV) [-] 1. [Drag2PDF- Merge]: Fix merging PDF files with xref containing multiple non-contiguous subsections. (Ent. Pack - EPDFENT) [-] 1. [PDFSealer]: Fix merging PDF files with xref containing multiple non-contiguous subsections. ============================================================= 2023-02-14 0. Ver 9.03 Build 9033 (Pro. Pack - EPDFPPRO) [!] 1. [Driver]: Fix a driver exception caused by image ROP conversion in the lookahead acceleration mode (when [ROPLookAhead] is True) [!] 2. [Log]: Improve the driver log info. ============================================================= 2022-10-26 0. Ver 9.01 Build 9017 (Ent. Pack - EPDFENT) [+] 1. [FTP/Cloud- Upload by OneDrive (Work Account)]: (FTPMethod: 5) Add a new method for uploading files by OneDrive (Work Account) (OAuth 2.0 authorization). [+] 2. [FTP/Cloud- Upload by OneDrive (Personal Account)]: (FTPMethod: 6) Add a new method for uploading files by OneDrive (Personal Account) (onedrive.live.com) (OAuth 2.0 authorization). [+] 3. [FTP/Cloud- FTPO365TenantType]: Add a registry setting and embedded command FTPO365TenantType for specifying Office 365 Account type. [0: common, 1: organizations i.e. work accounts, 2: consumers i.e. personal account]. It is determined automatically in FTPMethod 5,6. [+] 4. [FTP/Cloud- FTPO365TenantID]: Add a registry setting and embedded command FTPO365TenantID for specifying the Tenant ID (Directory ID) of the Office 365 Account for supporting custom AppID. [+] 5. [FTP/Cloud- FTPO365AppID]: Add a registry setting and embedded command FTPO365AppID for specifying the App ID (Client ID) for accessing the Office 365 resources. By default, it is automatically assigned as the registered public Application ID of eDocPrinter for Office 365 Automation. For a high security level, users may create and use their own registered Azure App ID in their organization directory (tenant) for uploading automation flow. [+] 6. [FTP/Cloud- FTPO365AppSecret]: Add a registry setting and embedded command FTPO365AppSecret for specifying the App secret (Client secret) for accessing the Office 365 resources. By default, it is not necessary for Browser based Authorization Code Grant. For a high security level, users may assign their own secret for their own registered Azure App in their organization directory (tenant). [+] 7. [FTP/Cloud- FTPOAuth2Browser]: Add a registry setting and embedded command FTPOAuth2Browser for specifying the Browser type to use for granting authorization. [0: default, 1: Edge browser, 2: Chrome browser] The default is launching the built-in Edge browser for OAuth 2.0 authorization. [!] 8. [FTP/Cloud- ]: Update resources ============================================================= 2022-10-20 0. Ver 9.00 Build 9009 (Ent. Pack - EPDFENT) [+] 1. [Email- Send by Office 365 SMTP BASIC]: (EmailSendMethod: 7) Add a new method for sending email by Office 365 SMTP server with BASIC authentication (AUTH LOGIN). [+] 2. [Email- Send by Office 365 SMTP XOAUTH2]: (EmailSendMethod: 8) Add a new method for sending email by Office 365 SMTP server with XOAUTH2 authentication (OAuth 2.0 Access Token). [+] 3. [Email- Send by Outlook Web App (Work Account)]: (EmailSendMethod: 9) Add a new method for sending email by Office 365 Outlook Web App (OWA OAuth 2.0 authorization). It will launch the OWA composing window in the Browser for the user to review or click to send. [+] 4. [Email- Send by Outlook Graph API App (Work Account)]: (EmailSendMethod: 10) Add a new method for sending email by Outlook Graph API (OWA OAuth 2.0 authorization). [+] 5. [Email- Send by Outlook Web App (Personal Account)]: (EmailSendMethod: 11) Add a new method for sending email by Outlook Web App (outlook.live.com) (OWA OAuth 2.0 authorization). It will launch the OWA composing window in the Browser for the user to review or click to send. [+] 6. [Email- Send by Outlook Graph API App (Personal Account)]: (EmailSendMethod: 12) Add a new method for sending email by Outlook Graph API (outlook.live.com) (OWA OAuth 2.0 authorization). [+] 7. [Email- EmailO365TenantType]: Add a registry setting and embedded command EmailO365TenantType for specifying Office 365 Account type. [0: common, 1: organizations i.e. work accounts, 2: consumers i.e. personal account]. It is determined automatically in EmailSendMethod 9,10,11,12. [+] 8. [Email- EmailO365TenantID]: Add a registry setting and embedded command EmailO365TenantID for specifying the Tenant ID (Directory ID) of the Office 365 Account. [+] 9. [Email- EmailO365AppID]: Add a registry setting and embedded command EmailO365AppID for specifying the App ID (Client ID) for accessing the OWA resources. By default, it is automatically assigned as the registered public Application ID of eDocPrinter for Outlook Web App. For a high security level, users may create and use their own registered Azure App ID in their organization directory (tenant) for OWA automation flow. [+] 10. [Email- EmailO365AppSecret]: Add a registry setting and embedded command EmailO365AppSecret for specifying the App secret (Client secret) for accessing the OWA resources. By default, it is not necessary for Browser based Authorization Code Grant. For a high security level, users may assign their own secret for their own registered Azure App in their organization directory (tenant). [+] 11. [Email- EmailOAuth2Browser]: Add a registry setting and embedded command EmailOAuth2Browser for specifying the Browser type to use for granting authorization. [0: default, 1: Edge browser, 2: Chrome browser] The default is launching the built-in Edge browser for oauth2 authorization and OWA (Outlook Web App) email composing. [!] 12. [Email- ]: Update resources ============================================================= ============================================================= 2022-07-18 0. Ver 8.09 Build 8095 (Pro. Pack - EPDFPPRO) [+] 1. [Email- SMTP]: (Standard SMTP without SSL/TLS) Add a registry setting and command EmailSMTPMode, when it is 1, it will use a new version of the SMTP function to send through SMTP server (non-TLS/SSL, EmailSendMethod: 2) which includes enhanced log and compatibility. [+} 2. [Email- EmailAttach]: In EmailSMTPMode=1 (EmailSendMethod: 2), it adds support assigning different display names of email attachments by angle bracket. (e.g. %%EmailAttach: Invoice.pdf; %%. It is already supported in sending by default email clients, Use Outlook, SMTP-SSL, SMTP-STARTTLS, and SMTP-Gmail. (EmailAttach, and EmailAttachImg) [!] 3. [Email- Log]: Improve logging in Email. (when DestLogLevel>10, it will be in verbose mode) (Adv Pack - EPDFADV) [!] 1. [Drag2PDF- ]: Resources updated to support high DPI icons. ============================================================= 2021-11-08 0. Ver 8.06 Build 8068 (Pro. Pack - EPDFPPRO) [+] 1. [Encrypt: ]: Add a command and registry setting EncryptPwdVar (under Security) with default value True. When it is True, users can define the passwords in UI/commands for protecting/encrypting the PDF file by using environment variables. For example, enter a user defined environment variable %UsedDefinedPwd% in the User Password field. When post-processing, teh PDF will be encrypted with the value by resolving the environment variable defined. [-] 2. [Driver- Images]: Fix a bug of the image conversion lookahead acceleration mode ([ROPLookAhead] is True). When converting images with [StretchBitBltROP-StretchBitBltROP-StretchBitBltROP] with ROP [SRCINVERT-SRCAND-SRCINVERT] in the image lookahead acceleration mode ([ROPLookAhead] is True). It will use the monochrome image of the second operator as a mask as a heuristic conversion. It achieves the same compatible conversion results as [ROPLookAhead] is False or as Build 7563 or earlier. (Ent. Pack - EPDFENT) [+] 1. [FTP- Amazon S3 Upload]: Add an UI option Server Region for selecting or assigning the AWS Region for S3 Upload with AWS Signature Version 4. [+] 2. [FTP- Amazon S3 Upload]: Support S3 uploading with file paths containing spaces and unicode characters (CJK) by automatic UTF-8 encoding with proper URL escaping. (char<=32, char>=128) [!] 3. [FTP- ]: Improve logging of FTP progress. [!] 4. [Resources]: Update resources (FTP) 2021-10-10 0. Build 8059 (Ent. Pack - EPDFENT) [+] 1. [FTP- Amazon S3 Upload]: Support Amazon S3 Upload with AWS Signature Version 4. [+] 2. [FTP- Amazon S3 Upload]: Add registry settings and commands FTPAWSServer and FTPAWSRegion for assigning the aws server and region for S3 upload. If the FTPAWSServer is empty, it will use the default s3.amazonaws.com. Users have to assign proper FTPAWSRegion (e.g. eu-central-1) for uploading. [+] 3. [FTP- ]: Support environment variables resolving in values of FTPUserName, FTPPassword, FTPAccessKey, FTPSecretKey, FTPAWSServer, FTPAWSRegion, FTPServer for portable settings. For example, define the FTPPassword by the user's environment variable, e.g., %MyFTPPasswd%. When post-processing, it will resolve the environment variable to the value defined for connecting to the server. Users may also define FTPAWSRegion to an environment variable, e.g., %AWSRegion%. When post-processing, it will resolve the environment variable for connecting to the proper region AWS S3 server without modifying the registry settings or commands. ============================================================= 2021-08-30 0. Ver 8.04 Build 8045 (Pro. Pack - EPDFPPRO) [!] 1. [Font- Embedding]: (for enhancing compatibility with some 3rd party embedded PDF renderer, e.g. HP Printer with PDF interprester) Embed Opentype OS/2 table. [!] 2. [Font- Embedding]: (for enhancing compatibility with some 3rd party embedded PDF renderer, e.g. HP Printer with PDF interprester) Rebuild cmap to exclude GID not in embedding subset (Truetype mode). [!] 3. [Font- Embedding]: (for enhancing compatibility with some 3rd party embedded PDF renderer, e.g. HP Printer with PDF interprester) Update hmtx with entries excluding GID not in embedding subset (Truetype mode). [!] 4. [Font- Embedding]: (for enhancing compatibility with some 3rd party embedded PDF renderer, e.g. HP Printer with PDF interprester) Keep numGlyphs the same as original and adjust loca size in embedding if forcing no to rebuild cmap.(Truetype mode). (Ent. Pack - EPDFENT) [+] 1. [FTP- FTP/SFTP/FTPS]: Support a registry setting and command DestDisplayName for assigning a different display name when uploading the current job PDF file by FTP. [+] 2. [FTP- FTP/SFTP/FTPS]: Support assigning different display names of FTP files by angle bracket syntax. (e.g. %%FTPAttach: Invoice.pdf; %%. It is supported in FTP/SFTP/FTPS modes. [+] 3. [FTP- SFTP]: Support custom SSH port of SFTP mode. (registry setting and command by FTPPortNumSFTP) [!] 4. [FTP- ]: Improve logging of FTP progress. ============================================================= 2021-06-29 0. Ver 8.03 Build 8037 (Pro. Pack - EPDFPPRO) [+] 1. [Dest- Timeout]: Improve the timeout processing of empty job (null job) detection. The new [DestNullTimeout] settings determines the timeout of the empty print job. (zero pages printed, e.g. notepad with empty content) [!] 2. [Dest- ]: Improve logging of job status detection. (PrinterServer - INTRASVR) [!] 1. [PrinterServer- PrinterServerMode]: When PrinterServerMode is 2 (SYSTEM context), it will automatically impersonate self of the calling context when ImpersonateUser is failed due to security policy. [!] 2. [PrinterServer- PrinterServerMode]: When PrinterServerMode is 2 (SYSTEM context), it will automatically set the DestDir to Default\Documents when Personal folder of the SYSTEM context is not defined. (Shell Folders) [!] 3. [PrinterServer- PrinterServerMode]: When PrinterServerMode is 1 (USER context), it will automatically switch to the SYSTEM context with impersonation self detection when the user's hive is not loaded properly. [!] 4. [PrinterServer- ]: Improve logging in PrinterServer mode. ============================================================= 2021-06-03 0. Ver 8.02 Build 8029 (Pro. Pack - EPDFPPRO) [+] 1. [Dest- SaveAs Dialog]: Support DPI awareness for high-resolution DPI screen or custom scaling of Remote desktop sessions when prompting SaveAs Dialog (SetProcessDpiAwareness). It is controlled by a global registry setting FeatureDPIAware in HKEY_LOCAL_MACHINE\SOFTWARE\ITEKSOFT\eDocPrinter\PDF\5.0\Install. The default value is 1 (PROCESS_SYSTEM_DPI_AWARE). [!] 2. [Dest- SaveAs Dialog]: Automatically check and set the PDF file extenstion when manually entering filename in the new Win10 (Common Item Dialog) SaveAs dialog. [!] 3. [Dest- SaveAs Dialog]: Override OnOverwrite and OnFileOK to support properly prompting the replace mode query dialog when PDF exists. (DestExistMode=0) [!] 4. [Installer- Resources]: Update resources to use shorter words of eDocPrinter's custom options in the new SaveAs dialog mode. (Common Item Dialog may automatically wrap the text of customized added controls) ============================================================= 2021-05-26 0. Ver 8.01 Build 8017 (Pro. Pack - EPDFPPRO) [+] 1. [Dest- SaveAs Dialog]: Support new Common Item Dialog style SaveAs dialog in Windows 10 (native Windows CLSID_FileSaveDialog). Add a registery setting DestSaveDlgStyle with its default value 0 for selecting the new Common Item Dialog style Saveas dialog or 1 for selecting the original Explorer-style SaveAs dialog. [+] 2. [Dest- SaveAs Dialog]: Add a registry setting DestSaveDlgGrayed with its default value True. When it is True, optional features like [Sign PDF] or [Embed ZUGFeRD XML Invoice] in the SaveAs dialog may be grayed out instead if hidden when the optional feature is not installed or disabled. [+] 3. [Dest- SaveAs Dialog]: Support customizing the new Common Item Dialog style SaveAs dialog with automatically aligning and sizing customized check boxes, edit controls, and buttons (related to eDocPrinter options) in the SaveAs Window. (IFileDialogCustomize) [+] 4. [Dest- SaveAs Dialog]: Support editing [Doc Info] in the newds Common Item Dialog style SaveAs dialog by adding a [Doc Info] as a prominent button. (IFileDialogCustomize::MakeProminent) (Ent Pack - EPDFENT) [+] 1. [ZUGFeRD/Factur-X- XML Invoice]: Support specifying optional parameters in the EditBox field of XML filepath in the new SaveAs dialog. It follows the comma-separated syntax of the eczf command [ZUGFeRD or Factur-X xml file path to be embedded, (optional) Filename if not using the default, (optional) Description, (optional) Data relationship, (optional) XML invoice data comformance level profile] [+] 2. [ZUGFeRD/Factur-X- XML Invoice]: Support showing only the XML path in the EditBox field in the new SaveAs dialog by ripping off optional parameters in eczf command [%%eczf: ZUGFeRD or Factur-X xml file path to be embedded, (optional) Filename if not using the default, (optional) Description, (optional) Data relationship, (optional) XML invoice data comformance level profile%%]. It will keep using the optional parameters specified by the eczf command if only the xml filepath is modified. [-] 3. [ZUGFeRD/Factur-X- XML Invoice]: Fix a side-effect bug causing by the optional parameters of the eczf command when the ZUGFeRD XML filepath not properly shown in the SaveAs dialog in Build 8009. ============================================================= 2021-04-29 (Ent Pack - EPDFENT) [-] 1. [ZUGFeRD- XML]: Fix a side-effect bug causing the option for choosing the ZUGFeRD XML not properly shown in the SaveAs dialog in Build 8009 (or Ver 7 build 7655). 2021-04-22 (Pro. Pack - EPDFPPRO) [!] 1. [Driver- Images]: Improve the image conversion lookahead acceleration mode ([ROPLookAhead] is True). The default is True to enable using lookheads to support converting special concatenated image ROPs like ROP 0x6666-0x8888-0x6666. [-] 2. [Driver- Images]: Fix the side effect bug of Build 7611 when converting images with [BitBlt-BitBlt-BitBlt] with ROP [SRCINVERT-SRCAND-SRCINVERT] in the image lookahead acceleration mode ([ROPLookAhead] is True). It will use the monochrome image of the second operator as a mask as a heuristic conversion. It achieves the same compatible conversion results as [ROPLookAhead] is False or as Build 7563 or earlier. ============================================================= 2021-03-15 0. Ver 8.00 Build 8009 (Ent. Pack - EPDFENT, requires Ent. Pack license) [+] 1. [Installer- ]: Add UI options for adding extra optional printer instances compliant with ZUGFeRD 1.0, ZUGFeRD 2.1, Factur-X profiles with enabling embedding commands. [+] 2. [Installer- addprn.exe]: Add command line arguments for adding printer instances compliant with ZUGFeRD 1.0 with/without enabling embedding commands. The syntax is [addprn az3z "ZUGFeRD 1.0 printer"] and [addprn az3u "ZUGFeRD 1.0 printer"] correspondingly. [+] 3. [Installer- addprn.exe]: Add command line arguments for adding printer instances compliant with ZUGFeRD 2.1 with/without enabling embedding commands. The syntax is [addprn az3z2 "ZUGFeRD 2.1 printer"] and [addprn az3u2 "ZUGFeRD 2.1 printer"] correspondingly. [+] 4. [Installer- addprn.exe]: Add command line arguments for adding printer instances compliant with Factur-X with/without enabling embedding commands. The syntax is [addprn az3zx "Factur-X 1.0 printer"] and [addprn az3ux "Factur-X 1.0 printer"] correspondingly. 2021-03-08 0. Ver 8.00 Build 8007 (Ent. Pack - EPDFENT, requires Ent. Pack license) [+] 1. [Doc Info- ]: Add new [ZUGFeRD 2.0], [ZUGFeRD 2.1], and [Factur-X] modes for PDF compliance with the latest ZUFFeRD e-invoice standard. It requires an ZUGFeRD XML assigned from the SaveAs dialog or by embedded commands. [+] 2. [Doc Info- ]: By default, in ZUGFeRD and Factur-X modes, it will use PDF/A-3b comformance. It will use PDF/A-3a when [Tagged PDF] is turned ON. [+] 3. [Embedded commands- eczf]: Support embedding XML invoice data in Factur-X mode by the embedded commands eczf, [%%eczf: ZUGFeRD or Factur-X xml file path to be embedded, (optional) Filename if not using the default, (optional) Description, (optional) Data relationship, (optional) XML invoice data profile%%]. [+] 4. [Embedded commands- eczf]: Add a new parameter to support custom data relationship in the embedded commands eczf, [%%eczf: ZUGFeRD or Factur-X xml file path to be embedded, (optional) Filename if not using the default, (optional) Description, (optional) Data relationship, (optional) XML invoice data comformance level profile%%]. The default value is Alternative for ZUGFeRD and Factur-x. Possible values include Data, Source, Alternative, Supplement, and Unspecified. [+] 5. [Embedded commands- eczf]: Add a new parameter to support specifying comformance level profile in the embedded commands eczf, [%%eczf: ZUGFeRD or Factur-X xml file path to be embedded, (optional) Filename if not using the default, (optional) Description, (optional) Data relationship, (optional) XML invoice data comformance level profile%%]. The default value is BASIC for ZUGFeRD and Factur-X. Possible values are MINIMUM, BASIC WL, BASIC, EN 16931, and EXTENDED. [+] 6. [Embedded commands- eczx]: Add a new embedded command ezcx to support embedding extra supplement files in the ZUGFeRD or Factur-X PDF invoices. This embedded commands eczx syntax is [%%eczx: the extra file path to be embedded, (optional) Filename if not using the default, (optional) Description, (optional) Data relationship]. The default value of the filename and description is the filename extracted from the path specified. The default value of data relationship is Supplement if not specified. This command provides to help to embeded extra files like delivery report, tracking information, product spec, or others in the PDF invoice. [!] 7. [Embedded commands- eczf and eczx]: It will automatically adds extra file information (ModDate and Size) in the PDF EF's Params dictionary. (Adv. Pack - EPDFADV) [!] 1. [Embedded commands- acef]: Improve the commands for adding multiple file attachments in PDF. (indirect object naming and counting) (Pro. Pack - EPDFPPRO) [+] 1. [Doc Info]: Add a new registry setting [DocInfoAutoVersion] with its default value True. It will automatically set the proper pdf version header from the PDF compliance standard selected. (PDF/A, ZUGFeRD, Factur-X) ============================================================= 2021-04-29 0. Ver 7.66 Build 7666 (Ent Pack - EPDFENT) [-] 1. [ZUGFeRD- XML]: Fix a side-effect bug causing the option for choosing the ZUGFeRD XML not properly shown in the SaveAs dialog in Build 7655. 2021-04-22 0. Ver 7.65 Build 7655 (Pro. Pack - EPDFPPRO) [!] 1. [Driver- Images]: Improve the image conversion lookahead acceleration mode ([ROPLookAhead] is True). The default is True to enable using lookheads to support converting special concatenated image ROPs like ROP 0x6666-0x8888-0x6666. [-] 2. [Driver- Images]: Fix the side effect bug of Build 7611 when converting images with [BitBlt-BitBlt-BitBlt] with ROP [SRCINVERT-SRCAND-SRCINVERT] in the image lookahead acceleration mode ([ROPLookAhead] is True). It will use the monochrome image of the second operator as a mask as a heuristic conversion. It achieves the same compatible conversion results as [ROPLookAhead] is False or as Build 7563 or earlier. ============================================================= 2020-11-23 0. Ver 7.61 Build 7611 [+] 1. [Driver- Images]: Add an registry setting [ROPLookAhead] in [Compression] subkey to support to disable using lookahead in image operators in the driver layer for backward compatibility. The default is True to enable using lookheads to support converting special concatenated image ROPs like ROP 0x6666-0x8888-0x6666. [!] 2. [Driver- Images]: Add supporting mixed BitBlt operators like [StretchBltROP-BitBlt-StretchBltROP] with special ROP 0x6666-0x8888-0x6666 by using lookaheads. [-] 3. [Driver- Images]: In [ROPLookAhead] mode, fix the side effect bug of Build 7575 when converting images with [StretchBltROP-BitBlt-StretchBltROP] with ROP SRCINVERT-SRCAND-SRCINVERT. The spooler processor is autmatically convert StretchBitBlt to BitBlt when the size of the destination rectangle is equal to the size of the source rectangle. 2020-09-30 0. Ver 7.59 Build 7599 [-] 1. [Email- ]: Fix converting [EmailContentFile] into UTF8 for processing to avoid system dependent encodings (non-unicode system locale). (side-effect bug in Build 7591) 2020-08-16 0. Ver 7.59 Build 7591 [+] 1. [Destination- AutoNum]: Add an embedded command and registry setting [DestAutoNumExist] with default value False. If it is True, in Auto-Numbered mode, it will start auto-numbered saving only when the destination file eixts. Bu default, it is False, it will saveas the result PDF with suffixing auto-number string(DestAutoNumFormat). [!] 2. [Destination- ]: Monitor process [epdfact.exe] - Handle inheritance to TRUE in impersonated mode. [!] 3. [Email- ]: Convert [EmailContentFile] into UTF8 for processing to avoid system dependent encodings (non-unicode system locale). (consistence with Build 7555) 2020-05-31 0. Ver 7.57 Build 7575 [-] 1. [Driver- Images]: Fix supporting [StretchBltROP] with special ROP 0x6666-0x8888-0x6666 by looking ahead. 2020-04-22 0. Ver 7.56 Build 7563 [+] 1. [Office Addin- ]: (64bit Addin) Support automating by 64bit Addin object. (Object property of COMAddin and RibbonCommand method in eDocPDF64.WordAddin, eDocPDFx64.ExcelAddin, eDocPDFx64.PowerPointAddin) [!] 2. [Drag2PDF- ]: Support converting by automating 64bit Office Addin (64bit Office) [-] 3. [Drag2PDF- ]: Fix exceptions on automating office addin. (COMAddins enumertaing and Addin's RibbonCommand) 2020-04-12 0. Ver 7.55 Build 7555 [!] 1. [Destination- ]: Convert all filepaths in system dependent encodings (non-unicode system locale) to UTF8 for processing. It avoids issues for processing those files in different non-unicode system encoding from the current system locale. 2020-03-02 0. Ver 7.53 Build 7539 [+] 1. [Destination- ]: Add a registry setting and command DestDisplayName for assigning a different display name when attaching the current job PDF file when emailing. [+] 2. [Email- EmailAttach]: Support assigning different display names of email attachments by angle bracket. (e.g. %%EmailAttach: Invoice.pdf; %%. It is supported in sending by default MAPI clients, Use Outlook, SMTP-SSL, SMTP-STARTTLS, and SMTP-Gmail. (EmailAttach, and EmailAttachImg) [+] 3. [Email- SMTP STARTTLS]: Support automatically select TLS version to enhance compatibility and security. (TLS 1.2) [!] 4. [Email- Outlook]: Enhance starting Outlook by command line (if Outlook is not started). (EmailOutlookByCmdline wait, and log) [!] 5. [Email- Log]: Improve logging in Email. (when DestLogLevel>10, it will be in verbose mode) [!] 6. [Email- Log]: Add TLS version in log. (SMTP-STARTTLS) [!] 7. [FTP- ]: Improve FTP asynchronous uploading (FTP-SSL worker thread, ck7) 2020-02-10 0. Ver 7.52 Build 7509 [!] 1. [Email- Log]: Add timestamp in log files before and after sending the job e-mail. [!] 2. [Email- Outlook]: Improve Outlook non-default profile detection. If Outlook is not started, start Outlook by commandline with assigning an argument of its profile name. (EmailOutlookByCmdline) 2020-01-10 0. Ver 7.51 Build 7503 [-] 1. [Watermark- GIF]: Fix stamping GIF images which palette has 16 indexed colors or less. [-] 2. [Watermark- GIF]: (Watermark property page) Fix displaying GIF images which palette has 16 indexed colors or less. 2019-12-02 0. Ver 7.49 Build 7491 [!] 1. [About- ]: (Server Lic Manager) Load per-Server license as a priority. [!] 2. [About- ]: (Server Lic Manager) Add KeyHKCUFirst to force loading HKCU lic information first instead of HKLM per-server license. [!] 3. [Destination- ]: Add a registry setting DestSetDir with default value False. When it is True, it will save and restore the current directory before and after the SaveAs dialog. (GetCurrentDirectory) 2019-11-07 0. Ver 7.47 Build 7479 [!] 1. [Office Addin- ]: (64bit Addin) Support native 64bit helper COM class for controlling eDocPrinter and its registry settings. (64bit COM object class name: "eDocPDF64.Control" instead of 32bit class name "eDocPDFAddin.Control") [!] 2. [Office Addin- ]: (64bit Addin) Support mail merge mode. [!] 3. [Installer- ]: (64bit Addin) Support installing and registering eDocPDF64.Control COM component. 2019-10-10 2019-09-16 2018-12-12 0. Ver 7.31 Build 7409 [!] 1. [Destination- Overlay]: Improve compatibilities to resolve an issue on loading PDF files missing %%EOF mark in the xref section. (xref section by /Prev in trailer) [!] 2. [Log- ]: Improve logging in Outlook 365/2019 detection. [!] 3. [Log- ]: Improve logging in Outlook account selection (matching from) (Outlook 365/2019). 2018-10-31 0. Ver 7.29 Build 7395 [-] 1. [PDFSealer- ]: Fix appending PDF racing/delaying when controlling Reader DC in [Launch PDFSealer with appending] mode. (msgwait) [-] 2. [PDFSealer- ]: Fix appending PDF when opened by Reader DC OCX in [Launch PDFSealer with appending] mode. (ViewUsePDFOCX=True) [!] 3. [PDFSealer- ]: Catch exceptions when closing and reloading the PDF by the Reader control. (batch jobs) [!] 4. [PDFSealer- ]: Add an event for signaling the state when the file is fully unloaded by the Reader DC control. 2018-8-31 0. Ver 7.25 Build 7367 [-] 1. [About- ]: Fix displaying lic information (serial number) [-] 2. [About- ]: Fix hash calculation in DEPLOYTSC per-user. [!] 3. [About- ]: Support deploying TSECLI license by HKLM in V7 [!] 4. [About- ]: Support deploying TSECLI license by [Enter registration key] (administrator) shortcut in Windows Start in V7 [!] 5. [About- ]: The default DEPLOYTSC mode will check and skip if necessary. [!] 6. [About- ]: Improve license managing flow. [!] 7. [Drag2PDF- Log]: Set default log path to the folder of the Drag2PDF printer name on current user's Desktop. 2018-7-07 0. Ver 7.23 Build 7339 [-] 1. [Email- Outlook]: Fix automatically detecting Office 2016/365 (Outlook) Click to Run (InstallRoot) configuration in some environments. [-] 2. [Email- Outlook]: Fix automatically detecting Office 2016/365 (Outlook) Click to Run (Bitness) configuration in some environments. [-] 3. [Email- Outlook]: Fix automatically detecting 32/64bit Outlook 2016 Click to Run (DefaultProfile) configuration in some enviroments. [!] 4. [Email- Outlook]: Fix detecting the license and showing the license dialog when running Drag2PDF conversion. (TSE) 2018-6-12 0. Ver 7.21 Build 7325 [!] 1. [Office Addin- Word]: Improve to support for converting links in footnotes in word-addin direct mode (32bit non-Office Export mode) [!] 2. [Office Addin- Word]: Improve to support for converting links in endnotes in word-addin direct mode (32bit non-Office Export mode) [!] 3. [Office Addin- Word]: Improve to hyperlinks detection flow in word-addin direct mode (32bit non-Office Export mode) 2018-5-30 0. Ver 7.21 Build 7309 [+] 1. [Embedded commands- Adv. Cmd]: Add a new adv. command acpe which can be used to erase the whole content of the current page. For example, by adding %%acpe: %%, it will erase the currrent page content like an empty page. 2018-5-18 0. Ver 7.18 Build 7297 [+] 1. [Email- Outlook]: Add a registry setting EmailThunkByAct, which default value is True, to control to queue sending jobs when automating Outlook. (for Outlook singleton) [!] 2. [About- ]: Improve license manager (LicPackLevel) 2018-5-10 0. Ver 7.18 Build 7285 [+] 1. [Embedded Commands- EmailDeferredTime]: Instead of @hhmmssmmddyyyy, the form @hhmmss will be recognized as the time specified of the current day. For example, by using %%EmailDeferredTime: @223000%%, it will not be delivered until 22:30 today by Outlook. [+] 2. [Email- Outlook]: The registry setting and command EmailDeferredTime supports @hhmmss form to specify the time of the current day ============================================================= 2017-10-13 0. Ver 7.16 Build 7263 [-] 1. [Drag2PDF- ]: Fix detecting the license and showing the license dialog when running Drag2PDF conversion. (TSE) 2017-10-04 0. Ver 7.15 Build 7251 [!] 1. [About- ]: Improve the license manager. (Server res) [!] 2. [About- ]: Update resources 2017-09-18 0. Ver 7.15 Build 7247 [!] 1. [About- ]: Improve the license manager. (Act, Ent, TSECLI) 2017-05-31 0. Ver 7.14 Build 7237 [+] 1. [Embedded Commands- Adv. Commands]: Add ace1 command which will add the embedded filename into the EmbeddedFiles name tree in the document catalog. The acef command will not add it. 2017-05-09 0. Ver 7.14 Build 7233 [!] 1. [Redirect- ]: Add check to avoid exceptions when doing Redirect the spool job to physical printer with overlaying with a multi-pages template PDF whose spool job file is missing. Add file existence and header integrity check of the template job spool file to avoid missing or incorrect job files. [!] 2. [Redirect- ]: Improve log on redirecting mode. 2017-03-11 0. Ver 7.14 Build 7229 [+] 1. [DocInfo- ]: Add new registry settings and embedded commands DocInfoMetaFile and DocInfoMFEncoding for allowing to add custom Metadata stream from a xml file directly in PDF/A modes. By defualt DocInfoMFEncoding is "UTF-8". [+] 2. [DocInfo- ]: Support defining custom CustomDocInfoProducer when DocInfoEnableCustom is true which will override the default value in document info and Metadata in PDF/A modes. [+] 3. [DocInfo- ]: Support user selected PDF version header when in PDF/A modes. (PDF/A-2 and PDF/A-3) 2017-01-05 0. Ver 7.12 Build 7217 [-] 1. [Driver- ]: Fix an initialization issue of the license manager in driver layer. (trial watermak, TSECLIV2) 0. Ver 7.11 Build 7205 [+] 1. [About- ]: Add a new mode (TSECLIV2) of the license manager for activating users with roaming profiles. [!] 2. [Destination- ]: Improve the destination filename extension check (Filepath command in silent mode) in when DestAutoPDFExt=True with DestAutoNameDetectDot. [!] 3. [Email- SMTP]: Custom port in non-authentication mode. ============================================================= 2016-12-12 0. Ver 7.10 Build 7199 [!] 1. [Redirect- ]: Improve to support redirecting spool jobs with embedding temporary fonts to print from Easy Print on Windows Remote Desktop Applicaiton mode (Remote Desktop Service installed). [-] 2. [Driver- ]: Fix PDF command compatibility when printing out. (error on printing PDF out due to some image operator bound in collected textout BT ET) 2016-10-10 0. Ver 7.09 Build 7173 [-] 1. [Office Addins- ]: Fix 64bit addin loading error on some systems. (remove msvc runtime dependency) [-] 2. [Office Addins- 64bit Word]: Fix state initialization on multiple conversion. [!] 3. [Office Addins- 64bit Word]: Support simultaneous conversion of both headings and bookmarks. (office export restriction) 2016-09-23 0. Build 7165 [-] 1. [Destination- Merge]: Fix [Merge by Append to/Insert before/Overlay] to existing PDF filename containing unicode characters. (not convertible with system default encoding) 2016-06-16 0. Ver 7.07 Build 7157 [-] 1. [Font embedding- OpenType CFF]: Fix characters spacing calculation error on some CFF fonts (FS Me) [!] 2. [Font embedding- OpenType CFF]: Support automatically embedding as CID when FontCFFType1 (convert CFF as Type1) is True. [!] 3. [Destination- ]: Set DestExistBak default value to False. (Save .bak if destination file is already existing.) [!] 4. [Destination- ]: Add a registry setting DestAutoNameDetectDot for detecting the file extension for initializing the destination filename. The default value is 1 for detecting known file types or the length of the file extension is less than or equal to 4. Value 0 means "Do not detect file extensions". Value 1 means "Detect and remove automatically known file extensions or any file extension with its length which is less or equal than 4. Value 2 means "Detect and remove automatically known file extensions". Value 3 means "Detect and remove any file extension with its length which is less or equal than 4". Value 4 means "Detect and remove automatically any file extension". [-] 5. [Office Addins- 64bit Excel]: Fix using PaperQuality object which has a side-effect on page layout footer settings. 2016-05-30 0. Ver 7.06 build 7149 [!] 1. [Email- Outlook]: Support Outlook 2016 profiles browsing in [Use Outlook] options dialog. (Outlook 2016 profiles regstry changed) [!] 2. [Insatll- addprn.exe]: Add argumnet sOp sOs for testing on getting or enumrating Outlook profiles. 2016-05-24 0. Ver 7.05 build 7137 [+] 1. [Office Addins- 64bit PowerPoint]: Add 64bit Office Addin support. (PowerPoint) [-] 2. [Office Addins- 64bit Word]: Turn off MapPaperSize when converting. (Letter/A4 scale) [-] 3. [Office Addins- 64bit Word]: Automatically print hidden text by its corresponding display option. [!] 4. [Office Addin- ]: Add page destination when converting cross document hyperlinks into PDF Links by GotoR. 2016-04-05 0. Ver 7.04 build 7115 [+] 1. [Embedded Commands- Adv. Variables]: Support resolving Adv. variables using # as end tag. For example, %%Filepath: Job%#DATEX#%% will also be resolved to the proper value when used. This avoid '%' may be conflicted with the default command tag(%%). [+] 2. [Embedded Commands- Adv. Variables]: Add a registry settingn and command CmdVarEnd for specifying the end tag of Adv. variables used. The default value is null character. It will resolve both character # and % as end tag by default, e.g., %#DATEX# or %#DATEX% are both resolved properly. Users may specify other values to detect Adv. variable end tag. [+] 3. [Embedded Commands- Adv. Variables]: Add an Adv. variable FTITLE for resolving the destination PDF filename without the file type extension. It can be resolved in Email related commands as well as variables FNAME and FDIR. [+] 4. [Embedded Commands- Adv. Variables]: Add Adv. variables FININAME and FINITITLE for resolving the initial filename with/without file type extension which is from lpszDocName in StartDoc when printing. These variables can be used in Filepath command to build a destination path from the initial job info name, e.g., %%Filepath: %#FINITITLE#-%#DATE#.pdf%%. [+] 5. [Embedded Commands- Adv. Variables]: Add Adv. variables FINIDIR and FINIFILE for resolving the initial DestDir and DestFile values. [+] 6. [Embedded Commands- Adv. Variables]: Support resolving FNAME, FDIR, FTITLE, FININAME, and FINITITLE in Doc Info commands (Title, Subject, Author) [!] 7. [Embedded Commands- Adv. Variables]: When resolving Adv variables without proper license _NeedAdvLic! string will be appended. (Filepath, EmailSubject, and etc.) ============================================================= 2016-03-29 0. Ver 7.03 build 7109 [!] 1. [Destination- Saveas dialog]: Set default focusing on [Filename Edit Control] in Saveas dialog for compliant with the default behavior of Saveas dialog. Build 7103 has a side effect with default focusing on [Directory Dropdown Listbox Control] in Saveas dialog. [+] 2. [Destination- Saveas dialog]: Add a DestSaveDlgFocusPin registry setting and command to control the default focusing control item in Saveas dialog. The default value is 0 for representing the system default behavior. Value 1 will select [Filename Edit Control]. Value 2 will select [Folder and File List View Control]. Value 3 will select [Directory Dropdown Listbox Control]. [+] 3. [Destination- ]: Add an UI checkbox option [Save a backup file(.bak) when the destination exists]. Its corresponding registry setting and command is DestExistBak. [!] 4. [Destination- ]: Remove the UI option [Display Saveas dialog after print job spooled] since it is the default and recommended mode with supporting DestSaveMode by embedded commands. Its registry setting DestPostSaveDlg is still effective. [-] 5. [Destination- epdfact.exe]: Fix a waiting timeout for post-processing thread in [Process PDF asynchronously] mode.(epdfact.exe does not terminate properly in DFinishDestFileInProcess0) [+] 6. [Installer- Addprn.exe]: Add arguments ge and gi for exporting and importing reigstry settingf by calling regedit.exe with simplified arguments. For example, addprn.exe ge "D:\backup\export.txt" "eDocPrinter PDF Pro" HKCU will export the current user's " ============================================================= 2016-03-29 0. Ver 7.02 build 7103 [+] 1. [Destination- ]: Add a saveas mode "Prompt Saveas dialog with option [Do not save]". When selecting this mode, the saveas dialog prompted will show an additional [Do not save] button. Users may click to skip the save the destination PDF. This mode is controlled by registry setting DestSaveMode with value 7. (available by embedded command) In this mode, if the user click the [Do not save] button, the [Open PDF after saving] will automatically disabled since the result PDF is not saved. [+] 2. [Destination- ]: Add a registry setting DestSaveDlgNotSave (available by embedded command) with default value False. In the default "Prompt saveas dialog" mode, DestSaveDlgNotSave can set to True to show the optional [Do not save] button in Saveas dialog. Administrators can deploy a MUST setting DestSaveDlgNotSave to make the default "Prompt Saveas Dailog" mode working the same behavior as "Prompt Saveas dialog with option [Do not save]". ============================================================= 2016-01-11 0. Ver 7.01 Build 7081 [+] 1. [Office Addin]: Add support for 64bit Word addin. [+] 2. [Destination]: Add DestAddinJob regisry setting for supporting 64bit Office addin. [!] 3. [Resources]: Update resources (About) ============================================================= 2015-09-28 0. Ver 7.00 Build 7053 PDF/A-3 and ZUGFeRD related features: (Pro. Pack - EPDFPPRO) [+] 1. [Doc Info]: New PDF/A modes for compliant with PDF/A-2a PDF/A-2b PDF/A-2u PDF/A-3a PDF/A-3b PDF/A-3u [+] 2. [Installer- addprn commandline]: addprn az3a "printer profile name" and addprn az3b "printer profile name" for adding printer instances compliant with PDF/A-3. [+] 3. [Installer- ]: Add UI options for adding printer instances compliant with PDF/A-3a or PDF/A-3b directly. (Ent. Pack - EPDFENT, requires Ent. Pack license) [+] 1. [Doc Info]: New modes for compliant with ZUGFeRD Basic. It requires an ZUGFeRD XML assigned from the SaveAs dialog or by embedded commands. [+] 2. [Installer- addprn commandline]: addprn az3z "printer profile name" for adding printer instances compliant with ZUGFeRD Basic. [+] 3. [Installer- ]: Add UI options for adding printer instances compliant with ZUGFeRD Basic directly. [+] 4. [Embedded commands- Ent. commands]: An embedded commands eczf is added for embedding the ZUGFeRD invoice XML file by commands without using the Saveas dialog for workflow automation. The command and its parameter list is %%eczf: ZUGFeRD xml file path to be embedded, filename if not using default, description%%. For example, %%eczf: c:\invoices\ZUGFeRD1.xml%%. It will use the default standard ZUGFeRD-invoice.xml as the embedded filename for compliance. It requires the printer profile set in compliance mode PDF/A-3 or ZUGFeRD. Ver 7.00 Build 7053 [-] 1. [Installer- ]: Automatically stopping splwow64 in 64bit Windows when installing/upgrading drivers. (improve for Windows 10 printer driver installation to unlock driver DLLs) [-] 2. [Installer- ]: Fix installing/upgrading drag2pdf shell extension for Windows file explorer. (Windows 10 Explorer Shell explorer.exe extension) [!] 3. [Installer- ]: Support Windows printer driver upgrading without reboot. (Support Windows printer driver subsystem load new driver components (DLLs) automatically even old Dlls may be still in used (locked) by some application processes) 2015-07-02 0. Ver 7.00 Build 7021 (Adv. Pack - EPDFADV) [+] 1. [Redirect- ]: Add RedirectJobDir for redirecting by [reader openaction to print] to specify the directory for saving the temporary PDF files with openaction for automating reader to print. This folder path can be add into reader's priviledged location to avoid security warning of openaction. [+] 2. [Embedded commands- Variables]: Support resovling variables by %#varname# and %envvar# to avoid %% conflict. [+] 3. [Embedded commands- Adv. Cmd]: Add acex command for adding embedded files into PDF directly without creating visible annotation. [!] 4. [Embedded commands- Adv. Cmd]: Add optinal parameters filename and description for adv. command acef. For example, %%acef: fpath, icontype, [[R,G,B], flag, w, h, ox, oy, fname, desc]%%. When omitting, the filename from file path will be used. [!] 5. [Embedded commands- Adv. Cmd]: Automatically detect mime subtype when embedding files by acef, acex, ace0. [!] 6. [Embedded commands- Adv. Cmd]: Convert as unicode dding files by acef, acex, ace0. (Pro. Pack - EPDFPPRO) 2015-06-30 0. Ver 7.00 Build 7017 2015-06-22 0. Ver 7.00 Build 7009 2015-05-22 0. Ver 7.00 Build 7007 [+] 1. [Destination- ]: Add registry setting DestJobTimeout for automatically aborting jobs when timeout occurs due to the print job is in error or deleted state. The default is 300 (sec). [+] 2. [Destination- ]: Add registry setting DestJobAllowAbort for supporting to abort jobs when there are errors in rendering spooled jobs from the printer processor. (by eDocPDF printer processor) =============================================================