リソースエディタにウイルスが混入されているようです。
正規サイトのはずですが、おかしいですね。
シマンテックとトレンドマイクロの両方でウイルスを検知します。
トレンドマイクロのウイルス名は「TROJ_GEN.R03EC0ODM16」
検出するのは、32ビットのファイルが検出します。
64ビットは、検出されません。
リソースエディタが必要な方は、窓の杜を利用すれば、入手できます。
virustotalにも登録されているようです。
また、調べることがあります。
# -*- Encoding:UTF-8 -*-
require 'win32ole'
class Excel
end
excel = WIN32OLE.new('Excel.Application')
WIN32OLE.const_load(excel, Excel)
#Excelファイルをダイアログで開く場合
#book_file = excel.GetOpenFilename
#book = excel.WorkBooks.Open(book_file)
#ファイル名指定で開く場合1(COM使用)
#fso = WIN32OLE.new('Scripting.FileSystemObject')
#filename = fso.GetAbsolutePathName("test.xlsx")
#book = excel.WorkBooks.Open(filename)
#ファイル名指定で開く場合2
#book = excel.workbooks.open 'sample.xlsx'
# 新規ブックを作成
book = excel.workbooks.add
#画面に状況を表示させる。
excel.visible = true
#シートにワークシートの1を指定
sheet = book.Worksheets(1)
#セルの値を取得(縦、横)
#s = sheet.Cells.Item(3,3).value
#セルに値を格納(縦、横)
sheet.Cells.Item(3,3).value = 1000
sheet.Cells.Item(2,2).value = "画像一覧"
#test
sheet.Cells.Item(2,2).Font.Size = 20
sheet.Cells.Font.Name = 'MS ゴシック'.tosjis
#sheet.Cells.Item(2, 2).Font.Bold = true #失敗
#スタイル
#折り返して表示
#列の幅
#罫線
range = sheet.range("F11:G16")
#色
#range.Interior.ColorIndex = 6
#range.Interior.Pattern = Excel::XlSolid
#罫線
#線の種類
range.borders.lineStyle = Excel::XlContinuous
#線の太さ
range.borders.weight = Excel::XlThin
#名前を付けて保存する
#book.saveAs 'e:\test.xlsx'
#Excelブックを閉じる
#true:上書き false:上書きしない
#book.close(true)
#Excel終了
#excel.quit
罫線に成功です。
# -*- Encoding:UTF-8 -*-ire 'win32ole'
require 'win32ole'
class Excel
end
excel = WIN32OLE.new('Excel.Application')
WIN32OLE.const_load(excel, Excel)
# 新規ブックを作成
book = excel.workbooks.add
#画面に状況を表示させる。
excel.visible = true
#シートにワークシートの1を指定
sheet = book.Worksheets(1)
#罫線の範囲
range = sheet.range("F11:G16")
#線の種類
range.borders.lineStyle = Excel::XlContinuous
他にも、線の場所とか太さは、また
コメントを適当に変えて使います。
# -*- Encoding:UTF-8 -*-
require 'win32ole'
excel = WIN32OLE.new('Excel.Application')
#Excelファイルをダイアログで開く場合
#book_file = excel.GetOpenFilename
#book = excel.WorkBooks.Open(book_file)
#ファイル名指定で開く場合1(COM使用)
#fso = WIN32OLE.new('Scripting.FileSystemObject')
#filename = fso.GetAbsolutePathName("test.xlsx")
#book = excel.WorkBooks.Open(filename)
#ファイル名指定で開く場合2
#book = excel.workbooks.open 'sample.xlsx'
# 新規ブックを作成
book = excel.workbooks.add
#画面に状況を表示させる。
excel.visible = true
#シートにワークシートの1を指定
sheet = book.Worksheets(1)
#セルの値を取得(縦、横)
#s = sheet.Cells.Item(3,3).value
#セルに値を格納(縦、横)
sheet.Cells.Item(3,3).value = 1000
#名前を付けて保存する
#book.saveAs 'e:\test.xlsx'
#Excelブックを閉じる
#true:上書き false:上書きしない
book.close(true)
#Excel終了
excel.quit
libharuでの罫線は、難しいです。
考え方としては、始点から終点までの線を引く。
最後の終点が次の始点となるの繰り返しです。
LineTo以外の使い方も知りたいのですが・・・
//罫線
HPDF_Page_MoveTo (page, x, y);
HPDF_Page_LineTo (page, x + 510, y);
HPDF_Page_LineTo (page, x + 510, y + 100);
HPDF_Page_LineTo (page, x, y + 100);
HPDF_Page_LineTo (page, x , y);
HPDF_Page_Stroke (page);
絵がなくて、すみません。
細かいブログをいつか、まとめたいです。
UTF-8での作成に成功しましたが、難しいですね。
■フォントとUTF-8の指定です。
wcscat(FontPath,L"\\Fonts\\ARIALUNI.ttf");
HPDF_UseUTFEncodings(pdf);
const char *fontname;
fontname = HPDF_LoadTTFontFromFile(pdf, FontPath, HPDF_TRUE);
font = HPDF_GetFont(pdf, fontname, "UTF-8");
HPDF_SetCurrentEncoder(pdf, "UTF-8");
■テキストの出力
wchar_t wtext[] = L"テキストです。";
char text[2048];
WideCharToMultiByte(CP_UTF8,NULL,wtext,-1,text,2048,NULL,NULL);
HPDF_Page_TextRect (page, 50, 800, 580, 770,text, HPDF_TALIGN_CENTER, NULL);
HPDF_Page_EndText (page);
■文字サイズの指定
HPDF_Page_SetFontAndSize (page, font, 10);
libharuを使用したPDFの作成ができるようになってきています。
便利です。
いずれ、使い方を載せたいと思います。
残念なことに、ずいぶん戦うことになりました。
HPDF_Page_TextRect()は、折り返しが成功しませんでした。
折り返すには、スペースが必要らしいです。
demoでは、成功しているので原因判明にずいぶん時間が必要となりました。
参考
http://sourceforge.net/p/libharu/discussion/283687/thread/0cc7e6b7/