/* * [PRCanvas.java] * * Summary: Canvas for proofreader font. * * Copyright: (c) 1998-2017 Roedy Green, Canadian Mind Products, http://mindprod.com * * Licence: This software may be copied and used freely for any purpose but military. * http://mindprod.com/contact/nonmil.html * * Requires: JDK 1.8+ * * Created with: JetBrains IntelliJ IDEA IDE http://www.jetbrains.com/idea/ * * Version History: * 1.0 1998-07-08 original. */ package com.mindprod.proofreader; import java.awt.Canvas; import java.awt.Color; import java.awt.Font; import java.awt.Graphics; /** * Canvas for proofreader font. * * @author Roedy Green, Canadian Mind Products * @version 1.0 1998-07-08 original. * @since 1998-07-08 */ public class PRCanvas extends Canvas { /** * @param g where to paint, screen, printer etc. */ public void paint( Graphics gr ) { gr.setColor( Color.black ); Proofreader p = new Proofreader( gr, 1 ); gr.setFont( new Font( "Georgia", Font.PLAIN, 13 ) ); if ( false ) { p.drawString( "uvw wW gq9 2z 5s il17|!j oO08 `'\" ;: ,. m nn rn {[()]}", 50, 30 ); } if ( false ) { gr.drawString( "abcdefghijklmnopqrstuvwxyz", 0, 40 ); gr.drawString( "0123456789,.;:\\/\"\'`����()[]{}!|", 0, 70 ); gr.drawString( "ABCDEFGHIJKLMNOPQRSTUVWXYZ", 0, 110 ); p.drawString( "abcdefghijklmnopqrstuvwxyz", 250, 40 ); p.drawString( "0123456789,.;:\\/\"\'`����()[]{}!|", 250, 70 ); p.drawString( "ABCDEFGHIJKLMNOPQRSTUVWXYZ", 250, 110 ); } if ( true ) { int vert = 85; // draw at scale1 p.drawString( "The quick brown fox jumps over the lazy dog�s back.", 50, vert += 15 ); p.drawString( "", 50, vert += 15 ); p.drawString( "The distribution of knowledge among too many routines", 50, vert += 15 ); p.drawString( "is a major source of inflexibility in", 50, vert += 15 ); p.drawString( "classical approaches to software design.", 50, vert += 15 ); p.drawString( "Much of the difficulty in modifying software may be traced to it;", 50, vert += 15 ); p.drawString( "It also explains in part why software projects", 50, vert += 15 ); p.drawString( "are so difficult to keep under control,", 50, vert += 15 ); p.drawString( "as apparently small changes will impact many modules", 50, vert += 15 ); p.drawString( "and force developers to reopen modules", 50, vert += 15 ); p.drawString( "that were thought to be closed for good.", 50, vert += 15 ); } } //end paint } // end class PRCanvas