@@ -53,6 +53,10 @@ namespace iText.StyledXmlParser.Resolver.Resource {
53
53
public class ResourceResolver {
54
54
// TODO handle <base href=".."> tag?
55
55
/// <summary>Identifier string used when loading in base64 images.</summary>
56
+ public const String BASE64_IDENTIFIER = "base64" ;
57
+
58
+ /// <summary>Identifier string used when loading in base64 images.</summary>
59
+ [ System . ObsoleteAttribute ( @"This variable will be replaced by BASE64_IDENTIFIER in 7.2 release" ) ]
56
60
public const String BASE64IDENTIFIER = "base64" ;
57
61
58
62
/// <summary>Identifier string used to detect that the source is under data URI scheme.</summary>
@@ -333,7 +337,8 @@ public virtual bool IsImageTypeSupportedByImageDataFactory(String src) {
333
337
protected internal virtual PdfXObject TryResolveBase64ImageSource ( String src ) {
334
338
try {
335
339
String fixedSrc = iText . IO . Util . StringUtil . ReplaceAll ( src , "\\ s" , "" ) ;
336
- fixedSrc = fixedSrc . Substring ( fixedSrc . IndexOf ( BASE64IDENTIFIER , StringComparison . Ordinal ) + 7 ) ;
340
+ fixedSrc = fixedSrc . Substring ( fixedSrc . IndexOf ( BASE64_IDENTIFIER , StringComparison . Ordinal ) + BASE64_IDENTIFIER
341
+ . Length + 1 ) ;
337
342
PdfXObject imageXObject = imageCache . GetImage ( fixedSrc ) ;
338
343
if ( imageXObject == null ) {
339
344
imageXObject = new PdfImageXObject ( ImageDataFactory . Create ( Convert . FromBase64String ( fixedSrc ) ) ) ;
@@ -381,7 +386,8 @@ private byte[] RetrieveBytesFromBase64Src(String src) {
381
386
if ( IsContains64Mark ( src ) ) {
382
387
try {
383
388
String fixedSrc = iText . IO . Util . StringUtil . ReplaceAll ( src , "\\ s" , "" ) ;
384
- fixedSrc = fixedSrc . Substring ( fixedSrc . IndexOf ( BASE64IDENTIFIER , StringComparison . Ordinal ) + 7 ) ;
389
+ fixedSrc = fixedSrc . Substring ( fixedSrc . IndexOf ( BASE64_IDENTIFIER , StringComparison . Ordinal ) + BASE64_IDENTIFIER
390
+ . Length + 1 ) ;
385
391
return Convert . FromBase64String ( fixedSrc ) ;
386
392
}
387
393
catch ( Exception ) {
@@ -398,7 +404,7 @@ private byte[] RetrieveBytesFromBase64Src(String src) {
398
404
/// <param name="src">string to test</param>
399
405
/// <returns>true if string contains base64 mark</returns>
400
406
private bool IsContains64Mark ( String src ) {
401
- return src . Contains ( BASE64IDENTIFIER ) ;
407
+ return src . Contains ( BASE64_IDENTIFIER ) ;
402
408
}
403
409
}
404
410
}
0 commit comments