我的印象是unix_timestamp和from_unixtime Hive函数彼此"反向".
当我尝试将时间戳字符串转换为Hive中的秒数时:
SELECT unix_timestamp('10-Jun-15 10.00.00.000000 AM', 'dd-MMM-yy hh.mm.ss.MS a');
Run Code Online (Sandbox Code Playgroud)
我得到了1418176800.
当我尝试将1418176800转换为时间戳字符串时:
SELECT from_unixtime(1418176800, 'dd-MMM-yy hh.mm.ss.MS a');
Run Code Online (Sandbox Code Playgroud)
我得到10月12日 - 10月14日10.00.00.120 AM,这显然不等于原版.
有人可以解释发生了什么吗?谢谢.
概观
我在iPad应用程序中生成一个四页PDF文档,该文档使用自定义字体Trade Gothic.它正确嵌入到应用程序中,看起来很棒.
但是,该应用程序的一部分是通过电子邮件发送PDF作为留下.此发送文件将所有字体显示为默认sans类型,在少数系统上,我收到错误无法找到或创建字体'RVYPRT + TradeGothicLTStd-Light'.某些字符可能无法正确显示或打印.
我正在使用UIKit Framework生成PDF.这是一个使用相同过程的教程:http://www.ioslearner.com/generate-pdf-programmatically-iphoneipad/
我的问题
如何将字体嵌入PDF输出中,以便在发送后将其正确显示为自定义字体而非默认类型.
提前致谢!
更新1:我发现的类似未解答的问题
更新2:有关字体的更多信息
字体http://store1.adobe.com/cfusion/store/html/index.cfm?store=OLS-US&event=displayFont&code=TRDQ10003000是一个OpenType字体,允许通过许可证嵌入.
此外,使用的默认字体是标准的.
如果PDF文件中缺少某些字体,Adobe Acrobat和Adobe Reader将自动尝试使用这些程序中内置的多个Master字体之一来模拟丢失的字体.这样,文档将不会像设计者想要的那样完全表示,但至少文本不会重排.用于此的多主字体是:Adobe Serif MM和Adobe Sans MM
来源:http://www.prepressure.com/pdf/basics/fonts
更新3: 字体在PDF中引用,但未嵌入
该应用程序似乎试图嵌入字体,但它们没有正确嵌入.以下是文件 - >文档属性下嵌入字体的屏幕截图:

我看到的第一个问题是,当字体实际上是OpenType字体时,字体被列为类型1.正如预期的那样,"实际字体"是Sans MM(找不到嵌入字体时使用的字体).
更新4:在另一个PDF(使用Adobe生成,而不是iPad应用程序)中,所需的字体作为子集嵌入.我不确定,但这让我相信应该可以通过编程方式做同样的事情.
