无法从UWP应用生成的PDF文件中复制

时间:2017-09-12 05:53:33

标签: xaml pdf printing uwp uwp-xaml

我尝试从UWP应用程序打印并遵循此link

将其保存为pdf文件时,它会正常打印。我也可以复制这些信件。但是,当我将它粘贴到其他地方时,就会打印出这样的东西:""

我也试过不同的字体,但没有帮助。

以下是我试图打印的XAML:

    <Grid x:Name="PrintableArea" Background="White">
        <StackPanel x:Name="TextContent">
            <TextBlock TextAlignment="Center" FontFamily="Arial" FontWeight="Bold">
                        This is Test
            </TextBlock >
        </StackPanel>
    </Grid>

如何解决?

1 个答案:

答案 0 :(得分:1)

无论您使用什么创建PDF,显然无法使用ToUnicode CMap创建PDF文件。

PDF文件通常只嵌入字体的子集以保持缩小尺寸。这通常意味着应用于字体的编码是非标准的(并且它通常不是ASCII)。例如,如果你有文字&#34; Hello World&#34;然后分配字符代码,以便&#34; H&#34; = 1,&#34; e&#34; = 2等等。

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

PDF文件可能包含ToUnicode CMap,它将字符代码映射到Unicode代码点,PDF查看器应用程序可以使用它来复制Unicode代码点而不是字符代码,这样可以进行合理的复制/粘贴。但它是可选的。这是因为围绕PDF的原始设计决策是创建一个便携式查看器,所有消费者的PDF文件应该看起来相同,但设计师并没有考虑编辑或复制。 / p>