TFORMer能提供专业的打印方案,用于大多数应用程序中,如:报告,标签,邮件,商业窗体等等。TFORMer能满足您的标签应用程序, 条形码,和其他报表以及窗体打印的需要。
TFORMer SDK能够自动化打印和导出规范报表和标签。介于各版本的编程接口,TFORMer SDK可轻松地集成到您的应用程序。
TFORMer SDK常见问题解答(二)
Q6:如何通过.NET API生成存储库并打开TFORMer Designer?
下面我们将向您展示如何以编程方式生成存储库并通过TFORMer API打开TFORMer Designer。
注意:不会自动生成xmd文件(基于存储库的设计器文件)。您必须使用designer生成一个空的xmd文件(将此文件存储在.NET项目中的某个位置),然后在创建表单时将其复制到正确的位置(Forms / [ProjectName]子目录)。
using TECIT.TFORMer; using System.IO; // FileInfo class String repositoryPath = @"C:\temp\test\myRep.tfr"; String projectName = "myProject"; String formName = "myForm"; FileInfo repositoryFile = new FileInfo(repositoryPath); if (!repositoryFile.Exists) { // create new repository (read-only flag = false) Repository newRepository = new Repository(repositoryPath, true, false); // add project Project newProject = newRepository.AddProject(projectName); // add form FormLayout newFormLayout = newProject.AddFormLayout(formName); // set file name newFormLayout.Filename = newFormLayout.Name + ".xmd"; // close and save changes !!! newRepository.Close(true); // TO DO: // add "Forms" sub directory if not exist // add "Forms\myProject" sub directory if not exist // copy empty xmd file to Forms\myProject\ (file name must be like set above) } // if repository exists (with project and form !): // open for editing Repository repository = new Repository(repositoryPath, false, false); // get project Project project = repository.GetProject(projectName); // get form FormLayout formlayout = project.GetFormLayout(formName); // open TFORMer Designer formlayout.Design(@"C:\Program Files\TEC-IT\TFORMer6\Bin\TFORMer.exe", true, true, false, null); //formlayout.Design(null, true, true, false, null);
Q7:如何生成具有特殊字符的PDF?
使用TFORMer SDK创建PDF时,您可能会遇到以下异常:
该文本包含无法使用当前设置或字体打印的Unicode字符。信息:错误代码:0x0000697c
要将缺少的Unicode字符添加到嵌入字体,请转到TFORMer Designer菜单工具>选项> PDF : Embed Font with “True Type-Subgroups“
如果您的TFORMer SDK项目使用特定的TFORMer.xml配置文件,请设置选项:PDF ... embed-subset-fonts =“1”
Q8:如何使用Python打印TFORMer报告?
要使用Python打印TFORMer报告,可以使用以下脚本作为示例:
from ctypes import * FormFile = "c:/pathto/formfile.tff" DataFile = "c:/pathto/importdata.csv" TF_dll = oledll.LoadLibrary("TFormer60.dll") TF_dll.TFormer_LicenseMe("Your Licensee Name ", 4, 1,"Your Key" ) htform = TF_dll.TFormer_Init(0) rm = TF_dll.TFormer_SetRepositoryName(htform, FormFile) rm = TF_dll.TFormer_ResetData(htform) rm = TF_dll.TFormer_SetTxtDataFile(htform, DataFile, c_char(","), c_char(" ")) rm = TF_dll.TFormer_SetCopies(htform,1) rm = TF_dll.TFormer_SetStartPosition(htform, 1, 0) rm = TF_dll.TFormer_SetPrinter(htform, "", 0) rm = TF_dll.TFormer_PrintForm(htform) print 'finished'
Q9:为什么DllNotFoundException(0x800703E6)无法加载DLL“TFormer75x64.dll”?
问题在于(.NET API):缺少或无法找到其中一个必需的依赖项。
搜索依赖项顺序:
- 本地装配路径
- 可执行的路径
- PATH环境变量中包含的路径
请确保TFORMer DLL位于其中一个位置。
在Web应用程序(IIS)中使用TFORMer .NET
有两种可能性:
- 安装为本地程序集(无GAC):将所有TFORMer文件复制到binWeb应用程序的子文件夹中 - 您需要TFORMer程序集+依赖DLLs + TFORMer.xml。确保GAC中未安装TFORMer程序集:如果已安装,请卸载TFORMer SDK安装程序。重新启动IIS应用程序池以重新加载程序集。之后,应找到所有DLL。
- 安装为全局程序集(GAC):使用我们的TFORMer SDK设置,它在GAC中安装TFORMer .NET并扩展PATH环境变量,以便找到所有依赖项。请注意,更新PATH环境变量可能需要重新启动IIS(iisreset在管理控制台上)或系统重新启动,否则仍无法找到DLL。
PS:如果您不使用我们的设置,请确保已安装Visual Studio运行时库。
Q10:如安装AutoDoc作为服务?
如果安装程序无法将TFORMer AutoDoc 7.5安装为系统服务,则可以使用以下命令行通过PowerShell进行安装。
- 安装TFORMer SDK 7.5和.NET 3.5作为先决条件。
- 运行AutoDoc安装程序:如果无法安装该服务,请单击“忽略”并继续安装。
- 以管理员身份运行Windows PowerShell(在Windows开始菜单上键入powershell)
- 将follwing命令复制并粘贴到shell命令行中(将-Credential替换为具有足够权限的帐户)
new-service -Name TECIT.TFORMer.AutoDoc -DisplayName "TFORMer AutoDoc 7.5" -Description "Automatic document generation service utilizing TFORMer SDK 7.5" -BinaryPathName '"C:\Program Files (x86)\TEC-IT\AutoDoc 7.5\AutoDoc.exe" "C:\Program Files (x86)\TEC-IT\AutoDoc 7.5\config.xml"' -StartupType Manual -Credential "domain\user"
- 在Windows服务下配置服务
以上是TFORMer SDK常见的问答,希望对你有所帮助。如果你在使用的过程中遇到其他困扰,可在下方评论区留言,或进入资源列表查看更多教程。