Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
  
  package org.docx4j.fonts;
  
  import org.slf4j.Logger;
This class represents a font which is available on the system. It essentially wraps fop's EmbedFontInfo, but names it using the name from the triplet. However, it extends that with Panose info. TODO: use reflection, so that things don't fail if the fop jar doesn't include fontInfo.getPanose() or fontInfo.getEmbedFile()

Author(s):
dev
 
 public class PhysicalFont {
 	protected static Logger log = LoggerFactory.getLogger(PhysicalFont.class);		
 	protected FontResolver fontResolver = null;
 	protected boolean loadTypefaceFailed = false;
 	protected Typeface typeface = null;
 	
 	PhysicalFont(String nameEmbedFontInfo embedFontInfoFontResolver fontResolver) {
 		
 		try {
 			// Sanity check
 			if (embedFontInfo.getPostScriptName()==null) {
 				.error("Not set!");
 				//log.error(((org.apache.fop.fonts.FontTriplet)fontInfo.getFontTriplets().get(0)).getName());
 			}
 		} catch (Exception e1) {
 			// NB getPanose() only exists in our patched FOP
 				.warn("Not using patched FOP; getPostScriptName() method missing.");
 			}							
 		}
 		
 		this. = embedFontInfo;
 		this. = fontResolver;
 		
     	setName(name);
     	
     	//familyName = embedFontInfo.
     	
 //    	setName(fontInfo.getPostScriptName());
     	
 		setEmbeddedFile(embedFontInfo.getEmbedFile());
     	try {
         	setPanose(embedFontInfo.getPanose());		
 		} catch (Exception e) {
 			// NB getPanose() only exists in our patched FOP
 				.warn("Not using patched FOP; getPanose() method missing.");
 			}							
 		}
 	}
 	
 	private static boolean loggedWarningAlready = false;
 	
 	// postscript name eg 
 	public String getName() {
 		return ;
 	}
 	public void setName(String name) {
 		this. = name;
 	}
 	
 		return ;
 	}
 	
 	// // For example: Times New Roman - note this is an array;
 	// FOP doesn't ordinarily include it in EmbedFontInfo,
 	// instead it makes a font triplet to represent it
 //	String familyName;
 //	public String getFamilyName() {
 //		return familyName;
 //	}
 //	public void setFamilyName(String familyName) {
 //		this.familyName = familyName;
 //	}
 			
	public String getEmbeddedFile() {
		return ;
	}
	public void setEmbeddedFile(String embeddedFile) {
		this. = embeddedFile;
	}
		return ;
	}
	public void setPanose(org.docx4j.fonts.foray.font.format.Panose panose) {
		this. = panose;
	}
	public Typeface getTypeface() {
	LazyFont lazyFont = null;
		if ( == null) {
				lazyFont = new LazyFont();
				 = lazyFont.getRealFont();
			}
		}
		return ;
	}
New to GrepCode? Check out our FAQ X