Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Xaml Can';t从UWP应用程序生成的PDF文件复制_Xaml_Pdf_Printing_Uwp_Uwp Xaml - Fatal编程技术网

Xaml Can';t从UWP应用程序生成的PDF文件复制

Xaml Can';t从UWP应用程序生成的PDF文件复制,xaml,pdf,printing,uwp,uwp-xaml,Xaml,Pdf,Printing,Uwp,Uwp Xaml,我正在尝试从UWP应用程序打印,并遵循以下步骤 将其保存为pdf文件时,它会正常打印。我也能抄这些信。但当我将其粘贴到其他地方时,它会打印如下内容:“无论您使用什么方法创建PDF,都显然无法使用ToUnicode CMap创建PDF文件 PDF文件通常只嵌入字体的一个子集以保持较小的大小。这通常意味着应用于字体的编码是非标准的(而且通常不是ASCII)。因此,例如,如果您有文本“Hello World”,则字符代码将被指定为“H”=1,“e”=2等等 如果您复制并粘贴它,那么您将得到1、2、3、

我正在尝试从UWP应用程序打印,并遵循以下步骤


将其保存为pdf文件时,它会正常打印。我也能抄这些信。但当我将其粘贴到其他地方时,它会打印如下内容:“无论您使用什么方法创建PDF,都显然无法使用ToUnicode CMap创建PDF文件

PDF文件通常只嵌入字体的一个子集以保持较小的大小。这通常意味着应用于字体的编码是非标准的(而且通常不是ASCII)。因此,例如,如果您有文本“Hello World”,则字符代码将被指定为“H”=1,“e”=2等等

如果您复制并粘贴它,那么您将得到1、2、3、3、4、5、6、4、7、3、8,它们将显示为二进制


PDF文件可能包含将字符代码映射到Unicode代码点的ToUnicode CMap,PDF查看器应用程序可以使用该CMap复制Unicode代码点,而不是允许正常复制/粘贴的字符代码。但它是可选的。这是因为围绕PDF的最初设计决定是创建一个可移植的查看器,PDF文件在所有消费者身上看起来应该是一样的,但设计师们没有考虑编辑或复制。

事实上,我得到的PDF是正确的,内容或方向完全没有问题。我无法复制内容。我与一位iOS开发人员讨论过,他说即使他们生成的PDF文件也是非复制的le.我没有提到它的方向或可见外观。我说的是PDF文件的内部结构;文件中的实际内容与您在显示时看到的内容相反。而不是文本(例如)0x48、0x65、0x6c、0x6c、0x6F等等,文件中的内容是0x01、0x02、0x03、0x03、0x04。现在,如果复制并粘贴第一组数字,您将得到“Hello”,因为它的ASCII和大多数应用程序都会假定它是。如果复制第二组,您将得到一堆二进制文件。您唯一的解决方案是以更复杂的方式制作PDF。好的,我认为我知道了。我会相应地试试。谢谢。