/// <summary> /// Converts a raw string into a raw hexadecimal string literal, possibly encrypted. /// </summary> public static string ToHexStringLiteral(string text, PDFStringEncoding encoding, PDFStandardSecurityHandler securityHandler) { if (String.IsNullOrEmpty(text)) { return("<>"); } byte[] bytes; switch (encoding) { case PDFStringEncoding.RawEncoding: bytes = RawEncoding.GetBytes(text); break; case PDFStringEncoding.WinAnsiEncoding: bytes = WinAnsiEncoding.GetBytes(text); break; case PDFStringEncoding.PDFDocEncoding: bytes = DocEncoding.GetBytes(text); break; case PDFStringEncoding.Unicode: //bytes = UnicodeEncoding.GetBytes(text); bytes = RawUnicodeEncoding.GetBytes(text); break; default: throw new NotImplementedException(encoding.ToString()); } byte[] agTemp = FormatStringLiteral(bytes, encoding == PDFStringEncoding.Unicode, true, true, securityHandler); return(RawEncoding.GetString(agTemp, 0, agTemp.Length)); }
/// <summary> /// Converts a raw string into a raw hexadecimal string literal, possibly encrypted. /// </summary> public static string ToHexStringLiteral(byte[] bytes, bool unicode, PDFStandardSecurityHandler securityHandler) { if (bytes == null || bytes.Length == 0) { return("<>"); } byte[] agTemp = FormatStringLiteral(bytes, unicode, true, true, securityHandler); return(RawEncoding.GetString(agTemp, 0, agTemp.Length)); }