2009-04-01から1ヶ月間の記事一覧

libharu:HPDFPage#set_text_raise

#!/usr/bin/env ruby require "hpdf" pdf = HPDFDoc.new page = pdf.add_page font = pdf.get_font("Helvetica", nil) page.set_font_and_size(font, 20) page.begin_text page.move_text_pos(100, 100) 3.times do |i| page.show_text("foo " + i.to_s) pag…

Commons Lang、BitField#setBoolean()

import org.apache.commons.lang.BitField; public class C2009043000 { public static void main(String[] args) { BitField bf; bf = new BitField(5); System.out.println(bf.setBoolean(1, true)); bf = new BitField(5); System.out.println(bf.setBool…

bison マニュアルの中間記法電卓(StringTokenizer 未使用)

「^」にも対応 #!/usr/bin/env ruby require 'tdp' require 'tdp/utils' class Calc include TDParser include TDPUtils def expr1 rule(:expr2) - ((token("+")|token("-")) - rule(:expr2))*0 >> proc{|x| x[1].inject(x[0]){|n, y| case y[0] when "+" n …

libharu:HPDFPage#set_text_rendering_mode

#!/usr/bin/env ruby require "hpdf" pdf = HPDFDoc.new page = pdf.add_page font = pdf.get_font("Helvetica", nil) page.set_font_and_size(font, 40) y = 100 [HPDFDoc::HPDF_FILL, HPDFDoc::HPDF_STROKE, HPDFDoc::HPDF_FILL_THEN_STROKE, HPDFDoc::HPD…

Commons Lang、BitField#set()

import org.apache.commons.lang.BitField; public class C2009042900 { public static void main(String[] args) { BitField bf; bf = new BitField(5); System.out.println(bf.set(1) + " " + bf.getValue(15)); bf = new BitField(5); System.out.println…

bison マニュアルの中間記法電卓

「^」にも対応 #!/usr/bin/env ruby require 'tdp' require 'tdp/utils' class Calc include TDParser include TDPUtils def expr1 rule(:expr2) - ((token("+")|token("-")) - rule(:expr2))*0 >> proc{|x| x[1].inject(x[0]){|n, y| case y[0] when "+" n …

libharu:HPDFPage#set_text_matrix

#!/usr/bin/env ruby require "hpdf" pdf = HPDFDoc.new page = pdf.add_page font = pdf.get_font("Helvetica", nil) page.set_font_and_size(font, 20) page.begin_text #page.move_text_pos(100, 100) page.set_text_matrix(1, 1, 1, 1, 100, 100) page.s…

Commons Lang、BitField#isSet()

import org.apache.commons.lang.BitField; public class C2009042800 { public static void main(String[] args) { BitField bf; bf = new BitField(5); System.out.println(bf.isSet(1)); bf = new BitField(5); System.out.println(bf.isSet(2)); bf = ne…

bison マニュアルの中間記法電卓

Parsec.Expr を使用 module Main where import Text.ParserCombinators.Parsec import Text.ParserCombinators.Parsec.Expr import Text.ParserCombinators.Parsec.Token( TokenParser, makeTokenParser, reservedOpNames ) import qualified Text.ParserCom…

libharu:HPDFPage#set_text_leading

#!/usr/bin/env ruby require "hpdf" pdf = HPDFDoc.new page = pdf.add_page font = pdf.get_font("Helvetica", nil) page.set_font_and_size(font, 20) page.begin_text page.move_text_pos(100, 100) page.set_text_leading(100) page.show_text("foo") p…

Commons Lang、BitField#isAllSet()

import org.apache.commons.lang.BitField; public class C2009042700 { public static void main(String[] args) { BitField bf; bf = new BitField(5); System.out.println(bf.isAllSet(15)); bf = new BitField(7); System.out.println(bf.isAllSet(15));…

bison マニュアルの中間記法電卓

コマンドラインからの入力 module Main where import System import Text.ParserCombinators.Parsec import Text.ParserCombinators.Parsec.Token( TokenParser, makeTokenParser ) import qualified Text.ParserCombinators.Parsec.Token as P import Text.…

libharu:HPDFPage#set_rgb_stroke

#!/usr/bin/env ruby require "hpdf" pdf = HPDFDoc.new page = pdf.add_page page.set_rgb_stroke(1, 0, 0) page.move_to(100, 100) page.line_to(150, 100) page.line_to(150, 50) page.stroke pdf.save_to_file(File.basename($0, ".rb") + ".pdf")

Commons Lang、BitField#getShortRawValue(), #getShortValue()

import org.apache.commons.lang.BitField; public class C2009042600 { public static void main(String[] args) { BitField bf; bf = new BitField(5); System.out.println(bf.getShortRawValue((short)15) + " " + bf.getShortValue((short)15)); bf = ne…

bison マニュアルの中間記法電卓

小数で module Main where import Text.ParserCombinators.Parsec import Text.ParserCombinators.Parsec.Token( TokenParser, makeTokenParser ) import qualified Text.ParserCombinators.Parsec.Token as P import Text.ParserCombinators.Parsec.Languag…

libharu:HPDFPage#set_rgb_fill

#!/usr/bin/env ruby require "hpdf" pdf = HPDFDoc.new page = pdf.add_page #page.set_cmyk_fill(1, 0, 0, 0) page.set_rgb_fill(1, 0, 0) page.move_to(100, 100) page.line_to(150, 100) page.line_to(150, 50) page.fill pdf.save_to_file(File.basenam…

Commons Lang、BitField#getRawValue(), #getValue()

import org.apache.commons.lang.BitField; public class C2009042500 { public static void main(String[] args) { BitField bf; bf = new BitField(5); System.out.println(bf.getRawValue(15) + " " + bf.getValue(15)); bf = new BitField(4); System.ou…

bison マニュアルの中間記法電卓

整数のみ module Main where import Text.ParserCombinators.Parsec import Text.ParserCombinators.Parsec.Token( TokenParser, makeTokenParser ) import qualified Text.ParserCombinators.Parsec.Token as P import Text.ParserCombinators.Parsec.Langu…

libharu:HPDFPage#set_miter_limit

miter というのが入っているので、HPDFDoc::HPDF_MITER_JOIN に関係あるのかと思ったが、何も変わらない… #!/usr/bin/env ruby require "hpdf" pdf = HPDFDoc.new page = pdf.add_page page.set_line_width(30) page.set_miter_limit(10) y = 100 [HPDFDoc::…

Commons Lang、BitField#clearShort()

import org.apache.commons.lang.BitField; public class C2009042400 { public static void main(String[] args) { BitField bf; for (short i = 0; i < 16; i++) { bf = new BitField(5); System.out.println(i + " : " + bf.clearShort(i)); } } } で、 0…

getNextToken() による読み飛ばし

PARSER_BEGIN(Test) import java.io.*; public class Test { public static void main(String args[]) { Test parser = new Test(System.in); while (true) { try { parser.Input(); } catch (ParseException e) { System.out.println(e.getMessage()); } } …

libharu:HPDFPage#set_line_width

#!/usr/bin/env ruby require "hpdf" pdf = HPDFDoc.new page = pdf.add_page y = 50 [10, 20, 30].each do |w| page.set_line_width(w) page.move_to(100, y) page.line_to(200, y) page.stroke y += 50 end pdf.save_to_file(File.basename($0, ".rb") + "…

Commons Lang、BitField#clearByte()

import org.apache.commons.lang.BitField; public class C2009042300 { public static void main(String[] args) { BitField bf; for (byte i = 0; i < 16; i++) { bf = new BitField(5); System.out.println(i + " : " + bf.clearByte(i)); } } } で、 0 :…

LOOKAHEAD、規則を記述 再び

任意の規則が書けるのかな? PARSER_BEGIN(Test) import java.io.*; public class Test { public static void main(String args[]) throws ParseException { Test parser = new Test(System.in); parser.Input(); } } PARSER_END(Test) SKIP : { <SPACE: " " | "\t" | "\n" | "\r"> } TOKEN : </space:>…

libharu:HPDFPage#set_line_join

#!/usr/bin/env ruby require "hpdf" pdf = HPDFDoc.new page = pdf.add_page page.set_line_width(30) y = 100 [HPDFDoc::HPDF_MITER_JOIN, HPDFDoc::HPDF_ROUND_JOIN, HPDFDoc::HPDF_BEVEL_JOIN].each do |x| page.set_line_join(x) page.move_to(100, y) …

Commons Lang、BitField#clear()

import org.apache.commons.lang.BitField; public class C2009042200 { public static void main(String[] args) { BitField bf; for (int i = 0; i < 16; i++) { bf = new BitField(5); System.out.println(i + " : " + bf.clear(i)); } System.out.printl…

LOOKAHEAD、文字列と条件式の併用

PARSER_BEGIN(Test) import java.io.*; public class Test { public static void main(String args[]) throws ParseException { Test parser = new Test(System.in); parser.Input(); } } PARSER_END(Test) SKIP : { <SPACE: " " | "\t" | "\n" | "\r"> } TOKEN : { <A: "a"> | <B: "b"> | <C: "c"> | <D: "d"> } void Inpu…</d:></c:></b:></a:></space:>

libharu:HPDFPage#set_line_cap

HPDFPage#set_horizontal_scalling とばし。libharu のソースをちょろっと見たけど何をするものか不明… #!/usr/bin/env ruby require "hpdf" pdf = HPDFDoc.new page = pdf.add_page page.set_line_width(20) y = 100 [HPDFDoc::HPDF_BUTT_END, HPDFDoc::HPD…

Commons Lang、ValuedEnum#toString()

まんま import org.apache.commons.lang.enum.ValuedEnum; import java.util.*; public final class C2009041700_JavaVersionEnum extends ValuedEnum { //standard enums for version of JVM public static final int JAVA1_0_VALUE = 100; public static f…

LOOKAHEAD、トークン列と条件式の併用

PARSER_BEGIN(Test) import java.io.*; public class Test { public static void main(String args[]) throws ParseException { Test parser = new Test(System.in); parser.Input(); } } PARSER_END(Test) SKIP : { <SPACE: " " | "\t" | "\n" | "\r"> } TOKEN : { <A: "a"> | <B: "b"> | <C: "c"> | <D: "d"> } void Inpu…</d:></c:></b:></a:></space:>