Mercurial > mercurial > hgweb_golang.cgi
diff src/kaigo/Perori/bk.go @ 42:c58172a59534
bug fix.
author | pyon@macmini |
---|---|
date | Tue, 10 Mar 2020 21:12:29 +0900 |
parents | 34a474fb83c3 |
children | 4877160411cc |
line wrap: on
line diff
--- a/src/kaigo/Perori/bk.go Wed Mar 04 23:46:59 2020 +0900 +++ b/src/kaigo/Perori/bk.go Tue Mar 10 21:12:29 2020 +0900 @@ -1,7 +1,7 @@ /* bk.go: Insert Biko & Hatsuban - Last Change: 2020-03-04 水 16:48:05. + Last Change: 2020-03-10 火 15:13:54. */ package main @@ -76,6 +76,7 @@ XDW_DOCUMENT_INFO info = {sizeof(XDW_DOCUMENT_INFO), 0, 0, 0}; XDW_GetDocumentInformation(h, &info); + int color = XDW_COLOR_NONE; XDW_FOUND_HANDLE pFoundHandle = NULL; for (int i = 0; i < info.nPages; i++) { api_result = XDW_FindTextInPage(h, i + 1, stxt, NULL, &pFoundHandle, NULL); @@ -87,8 +88,6 @@ api_result = XDW_SetAnnotationAttribute(h, annoation, XDW_ATN_Text, XDW_ATYPE_STRING, hb, 0, NULL); api_result = XDW_SetAnnotationAttribute(h, annoation, XDW_ATN_FontSize, XDW_ATYPE_INT, (char*)&sz, 0, NULL); - - int color = XDW_COLOR_NONE; api_result = XDW_SetAnnotationAttribute(h, annoation, XDW_ATN_BackColor, XDW_ATYPE_INT, (char*)&color, 0, NULL); } @@ -140,6 +139,46 @@ return 0; } +int xdweraren(const char* in_file, const char* stxt) +{ + int x = 1870; + int y = 4680; + int yoff = 2825; + int sz = 90; + + char in_path[_MAX_PATH]; + _fullpath(in_path, in_file, _MAX_PATH); + + XDW_DOCUMENT_HANDLE h = NULL; + XDW_OPEN_MODE_EX mode = {sizeof(XDW_OPEN_MODE_EX), XDW_OPEN_UPDATE, XDW_AUTH_NODIALOGUE}; + + int api_result = XDW_OpenDocumentHandle(in_path, &h, (XDW_OPEN_MODE*)&mode); + if (api_result < 0) return api_result; + + XDW_DOCUMENT_INFO info = {sizeof(XDW_DOCUMENT_INFO), 0, 0, 0}; + XDW_GetDocumentInformation(h, &info); + + XDW_FOUND_HANDLE pFoundHandle = NULL; + for (int i = 0; i < info.nPages; i++) { + api_result = XDW_FindTextInPage(h, i + 1, stxt, NULL, &pFoundHandle, NULL); + if (pFoundHandle != NULL) continue; + + for (int r = 0; r < 9; r++) { + XDW_ANNOTATION_HANDLE annoation; + int api_result = XDW_AddAnnotation(h, XDW_AID_TEXT, i + 1, x, y + r * yoff, NULL, &annoation, NULL); + if (api_result < 0) return api_result; + + api_result = XDW_SetAnnotationAttribute(h, annoation, XDW_ATN_Text, XDW_ATYPE_STRING, " ", 0, NULL); + api_result = XDW_SetAnnotationAttribute(h, annoation, XDW_ATN_FontSize, XDW_ATYPE_INT, (char*)&sz, 0, NULL); + } + } + + XDW_SaveDocument(h, NULL); + XDW_CloseDocumentHandle(h, NULL); + + return 0; +} + */ import "C" @@ -162,7 +201,7 @@ // Constants const ( - version = "0.3" + version = "0.4" default_ccsvfile = "chosairai.csv" default_icsvfile = "ikenshoirai.csv" default_cxdwfile = "KBPC116G.xdw" @@ -230,7 +269,7 @@ if err != nil { log.Fatal(err) } - fmt.Println(" 備考データ読込") + fmt.Println(" 備考データ読込 ... done") step_start := print_time(start) /* READ KUBUN FROM CSV */ @@ -238,7 +277,7 @@ if err != nil { log.Fatal(err) } - fmt.Println(" 申請区分データ読込") + fmt.Println(" 申請区分データ読込 ... done") step_start = print_time(start) /* INSERT BIKO */ @@ -252,17 +291,24 @@ } ctxt = append(ctxt, t) } - fmt.Println(" 備考と申請区分を追加") + fmt.Println(" 備考と申請区分を追加 ... done") + step_start = print_time(step_start) /* INSERT HATSU-BAN & OPTIMIZE */ stxt, _, _ := transform.String(japanese.ShiftJIS.NewEncoder(), "大仙広介") - C.xdwhb(C.CString(default_tmpxdw), C.CString(default_cout), C.CString(hbi), C.CString(stxt)) - fmt.Println(" 発番追加(調査依頼ファイル)") + C.xdwhb(C.CString(default_tmpxdw), C.CString(default_cout), C.CString(hbc), C.CString(stxt)) + fmt.Println(" 発番追加(調査依頼ファイル)... done") step_start = print_time(step_start) + /* ERASE RENRAKUSAKI */ copy_tmp(default_ixdwfile) - C.xdwhb(C.CString(default_tmpxdw), C.CString(default_iout), C.CString(hbc), C.CString(stxt)) - fmt.Println(" 発番追加( 意見書依頼ファイル)") + C.xdweraren(C.CString(default_tmpxdw), C.CString(stxt)) + fmt.Println(" 連絡先消去 ... done") + step_start = print_time(step_start) + + /* INSERT HATSU-BAN & OPTIMIZE */ + C.xdwhb(C.CString(default_tmpxdw), C.CString(default_iout), C.CString(hbi), C.CString(stxt)) + fmt.Println(" 発番追加( 意見書依頼ファイル)... done") step_start = print_time(step_start) /* CHOSA IRAI LIST */ @@ -319,12 +365,12 @@ } w.Flush() - fmt.Println(" 調査依頼リスト作成") + fmt.Println(" 調査依頼リスト作成 ... done") step_start = print_time(step_start) /* CLEAN */ os.Remove(default_tmpxdw) - fmt.Println(" 終了") + fmt.Println(" 終了 ... end") step_start = print_time(step_start) }