编程开源技术交流,分享技术与知识

网站首页 > 开源技术 正文

【FAQ】条码打印工具TFORMer SDK热门技术问答精选合集(二)

wxchong 2024-07-20 08:15:38 开源技术 13 ℃ 0 评论

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常见的问答,希望对你有所帮助。如果你在使用的过程中遇到其他困扰,可在下方评论区留言。

Tags:

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表