2020年9月20日 星期日

20200415 - ドルポ秋葉原限定★ドルフィーアクリルケース・小(透明)

20200415 "Doll Point Akihabara Limited Items" Special Sale - 這次的販售有我想要的壓克力盒子, 大概也是拜武漢肺炎 (covid-2019) 之賜才有的線上版本。

ドルフィーオンラインストア「ドルポ秋葉原限定商品販売」終了迫る!

fig 1. 20200426 訂購
20200426 訂購 Dollfie Acryl case small, 相關費用請參考 fig 1, 總共費用 12980 日元, 並不便宜。

而且外國帳號無法購買, 只能使用日本帳號, 如果用外國帳號加入購物車, 會發現有錯誤訊息, 無法結帳。

20200508 到代收哪邊 (大阪)。

由於 20200501 ~ 20200507 的黃金周, 代收那邊無法收貨, 發 email 給 volks, 看能不能 20200508 收到。

ご担当様
お世話になっております。
これからゴールデンウィックにはいりますので
注文した商品は5/7以降の発送は可能でしょうか?
ご返事をお願い致しなす。
よろしくお願い致します。

20200428 透過 お問合せ (Contact us) 送出上述請求, 結果 0428 收到出貨通知。

20204029 volks 卻回信可以 2020/5/8 讓代收那邊收到, 真奇怪, 你都先寄出了, 還可以滿足我的到貨日期請求哦?
お客様

この度はボークス公式オンラインストア・サービスセンターに
お問い合わせいただき、誠にありがとうございます。

ご依頼の件、承りました。

それでは5月8日着指定にて発送させていただきます。

お問い合わせいただきありがとうございました。
今後とも御愛顧のほどをよろしくお願いいたします。

また、ショッピングに関してご不明な点などございましたら
お気軽にお問い合わせくださいますよう宜しくお願いいたします。

那我就覺得奇怪, 20200428 出貨, 這樣 2020/5/8 可以收到, 難道不會提早收到嗎?

代購解釋:
volks 他們會先寄, 放在代購附近的貨運公司倉庫, 等5/8再寄, 這樣 5/8 就可以收到貨。

物流查詢

詳細お問い合せ送り状NO最新荷物状況
詳細1460977849441配達完了
お荷物のお届けが完了致しました。
ご利用頂きありがとうございました。
配達完了日  :
05月08日 10時59分
お問い合せ送り状NO460977849441
出荷日2020年05月07日
集荷営業所亀岡営業所  TEL:0771-25-7510 FAX:0771-25-7470
配達営業所大阪営業所  TEL:06-6460-1111 FAX:06-6460-1150
お荷物個数1個
荷物状況日時担当営業所
↓集荷05/07 16:55亀岡営業所
↓輸送中05/07 21:17京都中継センター
↓配達中05/08 07:47大阪営業所
⇒配達完了05/08 10:59大阪営業所

還真的在 20200508 收到, 日本的物流真厲害, 台灣不知道有沒類似的作法?

這個壓克力盒很重, 運到台灣要 4850 日幣。

20200615 我終於收到, 開心的打開包裹拿這個壓克力盒, 不過慘案發生 ...

fig 2. 20200508 到日本代購處
壓克力箱附上了 500 元折價券, 還有一本廣告型錄。這個箱子有個問題, 長度只有 60cm, 穿了高跟鞋的 DD 無法放入, 需要低個頭才能放入, 而且只能躺著放娃娃, 它並不是設計用來站立放置的。老實說, 我有點後悔買這個, 貴又不太好用。

fig 3. 有一邊側邊破損
另外在運送的時候破裂了, 如 fig 3, 我看到的時候心在淌血, 這麼難買的東西, 這麼平凡的東西, 這麼貴的東西, 就這樣毀了。

fig 3. 裝入娃娃

2020年9月3日 星期四

使用 freetype2 (0) - 中文秀字原理

如果某個想法是你唯一的想法, 那就沒有比它更危險的東西了。
freetype2 是幹麻用的, 簡單來說就是可以把 type1, truetype 字型解譯出來, 讓我們取得字型內容, 然後用繪圖函式來秀出某一個字。如果沒有繪圖函式, 可以用 printf 來秀出這個字, 雖然粗糙了點, 但可以方便的測試。

freetype2 非常的複雜, 我在很久之前 (2001 左右) 讀了其內建的手冊, 異常辛苦, 印出來的紙本滿滿是我的注記。學習一個 library 尤其是一個複雜的 library, 沒有比給一個範例程式更好的學習方式了, 手冊雖然有範例, 但是不夠完整, 所以我才寫了這個, 可以編譯、執行、印出字型中的字, 而且只需要 c++17 就可以了, 不需要進入繪圖模式, 在 2019 年, 支援 c++17 的編譯器並不難找。

其中會需要 unicode 轉換, 我是借助 c++11 的標準程式庫來完成, c++11 來的即時, 更早之前, 我是用 qstring 來做 unicode 轉換, 為了 unicode 要 link qt 實在是有點蠢。

source code:
https://github.com/descent/progs/tree/master/cpp11_utf8

ft2_demo.cpp
  1 /* demo ft2 by printf */
  2 
  3 #include <unistd.h>
  4 
  5 #include <ft2build.h>
  6 #include FT_FREETYPE_H
  7 #include FT_GLYPH_H
  8 
  9 #include <vector>
 10 #include <fstream>
 11 #include <locale>
 12 #include <iostream>
 13 #include <iomanip>
 14 #include <string>
 15 
 16 #include <cstdio>
 17 #include <cstdlib>
 18 #include <cmath>
 19 
 20 #include <codecvt>
 21 #include <locale>
 22 
 23 using namespace std;
 24 
 25 // convert UTF-8 string to wstring
 26 static inline std::wstring utf8_to_wstring (const std::string& str)
 27 {
 28     std::wstring_convert<std::codecvt_utf8<wchar_t>> myconv;
 29     return myconv.from_bytes(str);
 30 }
 31 
 32 // convert wstring to UTF-8 string
 33 static inline std::string wstring_to_utf8 (const std::wstring& str)
 34 {
 35     std::wstring_convert<std::codecvt_utf8<wchar_t>> myconv;
 36     return myconv.to_bytes(str);
 37 }
 38 
 39 const char *c_fg = "*";
 40 const char *c_bg = "|";
 41 char aa = '0'; // anti-alias
 42 int font_size=10;
 43 
 44 void print_raw_data(FT_Bitmap *bitmap)
 45 {
 46   unsigned char *tmp = bitmap->buffer;
 47   for (int i=0 ; i < bitmap->rows ; i++)
 48   {
 49     unsigned char c = *tmp;
 50     
 51     for (int j=0 ; j < bitmap->pitch ; j++)
 52     {
 53       printf("%x, ", c); 
 54       ++tmp;
 55       c = *tmp;
 56     }
 57     printf("\n");
 58   }
 59 }
 60 
 61 void my_draw_bitmap_256(FT_Bitmap *bitmap,int pen_x,int pen_y)
 62 {
 63   cout << "bitmap rows : " << bitmap->rows << endl;
 64   cout << "bitmap width : " << bitmap->width << endl;
 65   cout << "bitmap pitch : " << bitmap->pitch << endl;
 66   if (bitmap->pixel_mode==ft_pixel_mode_mono)
 67     cout << "bitmap pixel mode : mono" << endl;
 68    if (bitmap->pixel_mode==ft_pixel_mode_grays)
 69    {
 70     cout << "bitmap pixel mode : grays" << endl;
 71     cout << "bitmap grays level : " << bitmap->num_grays << endl;
 72    }
 73 
 74 }
 75 
 76 void my_draw_bitmap_mono(FT_Bitmap *bitmap,int pen_x,int pen_y)
 77 {
 78   uint8_t r, g, b;
 79   cout << "bitmap rows : " << bitmap->rows << endl;
 80   cout << "bitmap width : " << bitmap->width << endl;
 81   cout << "bitmap pitch : " << bitmap->pitch << endl;
 82   if (bitmap->pixel_mode==ft_pixel_mode_mono)
 83     cout << "bitmap pixel mode : mono" << endl;
 84    if (bitmap->pixel_mode==ft_pixel_mode_grays)
 85    {
 86     cout << "bitmap pixel mode : grays" << endl;
 87     cout << "bitmap grays level : " << bitmap->num_grays << endl;
 88    }
 89 
 90   int startx = pen_x;
 91   int starty = pen_y;
 92   int cx=0, cy=0;
 93 
 94   unsigned char *tmp = bitmap->buffer;
 95   for (int i=0 ; i < bitmap->rows ; i++)
 96   {
 97     unsigned char c = *tmp;
 98     
 99     int font_w = 0;
100     for (int j=0 ; j < bitmap->pitch ; j++)
101     {
102       #if 0
103       printf("%x, ", ch); 
104       ++tmp;
105       ch = *tmp;
106       #endif
107 
108 
109 
110       for (int i=7 ; i>=0 ; --i)
111       {
112         if (font_w < bitmap->width)
113         {
114 
115         if (((c >> i) & 0x1) == 1)
116         {
117             printf(c_fg);
118         }
119         else
120         {
121             printf(c_bg);
122 
123         }
124 
125         }
126         //++cur_x;
127         ++cx;
128         ++font_w;
129       }
130       ++tmp;
131       c = *tmp;
132 
133     }
134     cx=0;
135     ++cy;
136     printf("\n");
137   }
138 }
139 
140 void usage(const char *fp)
141 {
142   printf("%s -p font_path -s font_size -t render_string -f fb -b bg -g 0 -a 0 -m [opened file] -x x -y y -d step_y\n", fp);
143 }
144 
145 int main(int argc, char *argv[])
146 {
147   const char *disp_str = "a中文bあい";
148   //string fontpath="./fireflysung.ttf";
149   //string fontpath="./unifont.pcf.gz";
150   string fontpath="./bsmi00lp.ttf";
151   int opt;
152 
153   string textline;
154   int x=0, y=100, step_x=16, step_y = 16;
155   while ((opt = getopt(argc, argv, "d:m:x:y:t:a:s:b:f:p:g:h?")) != -1)
156   {
157     switch (opt)
158     {
159       case 't':
160       {
161         disp_str = optarg;
162         break;
163       }
164       case 's':
165       {
166         font_size = strtol(optarg, 0, 10);
167         break;
168       }
169       case 'p':
170       {
171         fontpath = optarg;
172         cout << "fontpath: " << fontpath << endl;
173         break;
174       }
175       case 'f':
176       {
177         c_fg = optarg;
178         break;
179       }
180       case 'b':
181       {
182         c_bg = optarg;
183         break;
184       }
185       case 'a':
186       {
187         aa = optarg[0];
188         break;
189       }
190       case 'h':
191       {
192         usage(argv[0]);
193         return 0;
194       }
195     }
196   }
197 
198   FT_Library library;
199   FT_Face face;
200   FT_Error error;
201 
202   error=FT_Init_FreeType(&library);
203   if (error!=0)
204   {
205     cout << "FT_Init_FreeType(&library) error!!" << endl;
206     return -1;
207   }
208 
209   error=FT_New_Face(library,fontpath.c_str(),0,&face); // 從字型載入 face
210   if (error==FT_Err_Unknown_File_Format)
211   {
212     cout << "Don't support this font file" << endl;
213     return -1;
214   }
215   else if (error)
216        {
217          cout << "The font file cann't be opened!" << endl;
218          return -1;
219        }
220   cout << "face information : " << endl;
221   cout << "face number is : " << face->num_faces << endl;
222   cout << "face glyphs number is : " << face->num_glyphs << endl;
223   cout << "face's sytle name is : " << face->style_name << endl;
224   cout << "units per EM : " << face->units_per_EM << endl;
225   cout << "num_fixed_sizes : " << face->num_fixed_sizes << endl;
226   cout << "flags : " << face->face_flags << endl;
227   if (face->charmap==NULL)
228    cout << "No charmap is selected" << endl;
229   cout << "charmap numbers is : " << face->num_charmaps << endl;
230   error=FT_Select_Charmap(face,ft_encoding_unicode);
231   if (error)
232   {
233     cout << "FT_Select_CharMap(face,ft_encoding_unicode) error"  << endl;
234     return -1;
235   }
236 
237   FT_UInt gindex;
238 
239   //QVector<uint> utf32_str = str.toUcs4();
240   //QVector<uint> utf32_str = utf8_to_ucs4(disp_str);
241   //vector<wchar_t> utf32_str = utf8_to_ucs4(disp_str);
242 
243   std::wstring utf32_str = utf8_to_wstring(disp_str);
244 
245   cout << endl;
246 
247   for (int i=0 ; i < utf32_str.size() ; ++i)
248   {
249     cout << "utf-32: " << utf32_str[i] << endl;
250 
251     switch (utf32_str[i])
252     {
253       //case 0xd:
254       //case 0xa:
255       case 0x9: // tab
256       {
257         x += 16;
258         continue;
259         break;
260       }
261       case '\n':
262       {
263         x = 0;
264         y += step_y;
265         continue;
266         break;
267       }
268     }
269 
270     gindex = FT_Get_Char_Index(face, utf32_str[i]);
271     if (gindex==0)
272     {
273       cout << "glyph index not found" << endl;
274       continue;
275     }
276 
277     if (face->face_flags & FT_FACE_FLAG_SCALABLE)
278     {
279       #if 1
280       error = FT_Set_Pixel_Sizes(face, font_size, font_size);
281       if (error)
282       {
283         cout << "FT_Set_Pixel_Sizes error" << endl;
284         return -1;
285       }
286       #else
287       // only scale font can set font size.
288       error=FT_Set_Char_Size(face, 0, font_size*64,360,360);
289       if (error)
290       {
291         cout << "FT_Set_Pixel_Sizes error" << endl;
292         return -1;
293       }
294       #endif
295     }
296 
297   FT_Int load_flags=FT_LOAD_DEFAULT;
298   error = FT_Load_Glyph(face, gindex,load_flags);
299   if (error!=0)
300   {
301    cout << "FT_Load_Glyph(face,glyph_index,load_flags) is fail " << endl;
302    cout << "The error number is : " << error << endl;
303    return -1;
304   }
305   if (face->glyph->format!=ft_glyph_format_bitmap)
306   {
307    cout << "run FT_Render_Glyph" << endl;
308    //error=FT_Render_Glyph(face->glyph,ft_render_mode_normal);
309    if (aa == '1')
310      error=FT_Render_Glyph(face->glyph, FT_RENDER_MODE_NORMAL);
311    else
312      error=FT_Render_Glyph(face->glyph, FT_RENDER_MODE_MONO);
313    if (error)
314    {
315     cout << "FT_Render_Glyph error " << endl;
316     return -1;
317    }
318   }
319 
320     FT_GlyphSlot slot=face->glyph;
321     cout << "slot->bitmap_left: " << slot->bitmap_left << endl;
322     cout << "slot->bitmap_top: " << slot->bitmap_top << endl;
323     cout << "x: " << x << endl;
324     cout << "y: " << y << endl;
325     cout << "draw x: " << x + slot->bitmap_left << endl;
326     cout << "draw y: " << y - slot->bitmap_top << endl;
327 
328     // ref: fbterm-1.7/src/font.cpp Font::Glyph *Font::getGlyph(u32 unicode)
329     int left = face->glyph->metrics.horiBearingX >> 6;
330     int top = (face->size->metrics.descender >> 6) - (face->glyph->metrics.horiBearingY >> 6);
331     cout << "left: " << left << endl;
332     cout << "top: " << top << endl;
333 
334     if (aa=='1')
335     {
336       my_draw_bitmap_256(&slot->bitmap, x + slot->bitmap_left, y - slot->bitmap_top);
337     }
338     else
339     {
340       my_draw_bitmap_mono(&slot->bitmap, x + slot->bitmap_left, y - slot->bitmap_top);
341     }
342     print_raw_data(&slot->bitmap);
343     #if 1
344     x += slot->advance.x >> 6;
345     y += slot->advance.y >> 6;
346     #else
347     x += slot->advance.x;
348     y += slot->advance.y;
349     #endif
350   }
351 
352   FT_Done_FreeType(library);
353   return 0;
354 }

L198 ~ L320 就是在取出字型的 bitmap, 可以看到需要呼叫好幾個 api, 有了這個資料就可以在螢幕上畫出這個字。

unicode 點陣字型 (有日文)

apt-get install xfonts-unifont
/usr/share/fonts/X11/misc/unifont.pcf.gz

文鼎捐贈的字型 (只有繁體中文英文數字)
apt-get install fonts-arphic-bsmi00lp
/usr/share/fonts/truetype/arphic-bsmi00lp/bsmi00lp.ttf

只有畫出文字是不夠的, 還要畫在正確的位置, 這需要繪圖模式才辦得到, 以下的範例在於正確取得座標位置, 避免畫出來的 2 個水平文字無法水平對齊。這篇不會提到這個, 下篇再來說明這個。

https://www.freetype.org/freetype2/docs/tutorial/example1.c
參考
/* now, draw to our target surface (convert position) */
    draw_bitmap( &slot->bitmap,
                 slot->bitmap_left,
                 target_height - slot->bitmap_top );
畫出的座標

執行結果:
 1 |||*||||
 2 |||*||||
 3 ********
 4 *||*|||*
 5 ********
 6 *||*|||*
 7 |||*||||
 8 |||*||||
 9 ||||||||
10
11
12 ||||||||||
13 ||||*|||||
14 |********|
15 ||*|||*|||
16 |||*||*|||
17 |||*|*||||
18 ||||**||||
19 |||||*||||
20 |||**|*|||
21 |**||||***

可以隱約看出「中文」這 2 個字。

ref:
FreeType简易教程

2020年8月21日 星期五

c 語言 lable 可以放在 else 之後

看了「一个关于if else容易迷惑的问题」之後, 我想看看 c 可不可以這麼做, 結果是可以的, 執行結果也很特別。

a2.c
 1 #include <stdio.h>
 2 
 3 #if 0
 4 $a = true;
 5 if ($a) {
 6   echo “true”;
 7 } else label: {
 8   echo “false”;
 9 }
10 
11 #endif
12 
13 int main(int argc, char *argv[])
14 {
15   int a = 1;
16 
17   if (a)
18   {
19     printf("true\n");
20     goto label;
21   }
22   else label:
23   {
24     printf("false\n");
25   }
26   
27   return 0;
28 }

2020年8月14日 星期五

[日本自助行 7/8] ] 20190913 名古屋慢速磁浮列車 - リニモ

日期: 20190913 (5) (7/8)
地點: 名古屋リニモ磁浮列車沿線

本篇文章提到的時間均為日本時間, 沒寫單位的金額為日圓。

我不會日文, 英文也不好: 文章中有關問路或是其他問人的資訊, 都是用很克難的方式完成 (簡單英文、簡單日文、比手畫腳)。

今天的狀況不大好, 有點說不上來的不舒服, 不曉得是不是身體內的結石在蠢蠢欲動, 讓我擔心不已, 只剩下 2 天就要回台灣了, 身體拜託要撐住阿!

在 first carbin 用完早餐之後, 還是感到不舒服, 便回房休息, 直到 10:30 才出門。

今天拿著我昨天洗好的衣服出來曬, 就這麼剛好, 所有旅程的天氣都是大太陽, 就這天是陰天, 折騰了一天, 回到旅館之後, 衣服勉強有乾。

先不急著往今天的目的地去, 轉而到「名鐵線」, 這是明天要往機場的電車, 我先去看看整個路線的狀況。

名鐵線比我想的還要不好走, 雖然指示牌早早就有標示, 但一路跟著指示牌的路徑來到一個階梯處, 往下就是名鐵線的入口, 進去看了狀況, 應該不難吧! 在這裡也看到近鐵線, 這是從大阪來名古屋的另外一個交通路線。

觀察一下四周之後, 便撤退往今天的行程而去。

來名古屋最主要是為了搭乘「リニモ磁浮列車」, 看阿倫的影片介紹而得知。



因為喜愛搭乘電車之旅, 磁浮列車這麼特別的電車令我好奇, 很想搭乘看看是怎麼樣的感覺。另外可以參考「低速磁浮電車-愛知高速交通東部丘陵線(Linimo)」的介紹。

先在名古屋車站搭乘東西線到「藤が丘駅」, 藤が丘駅是最後一站, 不怕坐錯, 大約需要 30 分鐘, 還蠻遠的。



東西線的「藤が丘駅」和リニモ的「藤が丘駅」並不在同一個車站裡頭, 得先出站, 再進站。

リニモ的站體有種未來的科技感, 想必是為了搭配磁浮列車這樣的高科技吧!

和阿倫一樣買了一日乘車券, 可以當天無限制來回搭乘リニモ。



雖然早已經知道這是慢速磁浮列車, 但是也太慢了吧, 完全沒有速度感, 心中有點失望。

也和阿倫一樣, 先到「長久手古戦場」, 不一樣的是我沒看到那場祭典, 但沒關係, 附近有個古戦場公園, 我就到那晃晃吧! 嚇死我了, 怎麼完全都沒有人, 沿路上我沒看到半個人, 這裡是這麼荒涼的地方嗎?

沒關係, 我就愛沒人的地方, 在古戦場公園隨意著散步, 享受著異國的新鮮感, 吸著清新的空氣, 看著沿途的日式住宅, 真棒阿! 旅行果然是消除壓力, 回復精神的好方法。



到這邊的時候已經是 12 點多了, 剛好是用餐時間, 但是我懷疑著這邊是不是有用餐的地方, 四周都是住宅, 好像不是商業區, 如果沒有吃的, 可能得回去「長久手古戦場」車站那邊。

其實漫步在日本住宅街道上還蠻有趣的, 看著他們的建築、道路種種設施, 和台灣的街景有什麼不同。這時我發現一間超市, 來去看看有沒有什麼好物可以購買。

這間超商可以用 linepay, 我本來還在想台灣的 linepay 能不能用, 後來得知是不能的, line 還在整合當中, 可能之後就可以用台灣的 linepay 在日本結帳, 還好沒衝動使用 linepay 結帳。



再過去之後, 有一間餐館 - 松屋, 一樣是採用機器點選餐券, 本來我想吃燒肉, 但是看到一個什麼復活的餐點, 就它吧! 結果上菜之後, 並不好吃, 自己也不知道在吃什麼, 好後悔。

結束這難吃的一餐之後, 回到車站, 繼續搭乘 リニモ, 選了沒什麼人下車的地方出站, 沒人出站還真是有他的道理, 完全不是什麼特別的景點, 四周盡是寬廣的空地、草地, 這裡可以見到一個摩天輪, 想到我上次的日本行, 錯過 2 個摩天輪, 這個看起來有在轉動, 應該是有營業吧! 就來去那邊看看。

接著我便來到了愛・地球博紀念公園, 磁浮列車似乎就是為了這個活動而建立的。

這是一個非常大的廣場, 但其實並沒有太多人, 摩天輪是這裡其中一個設施, 但用走的過去, 實在太遠了, 我不太想走過去, 選擇到附近走走, 看看這個「愛・地球博紀念公園」。

其實蠻無聊的, 就是個大公園, 散散步還可以, 沒活動時, 特地來這可能會失望, 我是因為要搭乘リニモ, 所以不介意這種很弱的景點。

リニモ車站有些會販售一些紀念品, 不過很低調, 我錯過了好幾個站, 才終於知道要在哪裡買。我在八草站買了一個リニモ的紀念品, 是一台リニモ的電車模型, 1000 未含稅。這裡可以和愛知環狀鐵路接駁, 我一開始不知道這個資訊, 沒有打算搭乘愛知環狀鐵路。還是按照原計畫, 搭乘リニモ返回。

我特地停留在終點「八草站」看リニモ的回車, 特地在這裡等了一陣子, 司機會開往之後的鐵軌, 然後再透過鐵軌的切換, リニモ就會從反方向回來了。

我特地出「八草站」走走, 看看愛知環狀鐵路, 這裡有個看似山林野景的密境「覺勝寺」讓我很有興趣, 不過時間不太夠, 我只能眼神探望一下就離開了。

リニモ雖然短, 但我還是有好幾個地點沒有下去看看, 還有一些時間, 回程我就到一些沒下車的站晃晃。

去了トヨタ博物館 (豐田博物館), 芸大通駅出站, 沿著指標走到トヨタ博物館, 然後我就折返了, 阿 ... 我對沒トヨタ興趣嘛! 來看看地點在那就滿足了, 而且時間也晚, 趕快趕路往下一站去了。

參考「低速磁浮電車-愛知高速交通東部丘陵線(Linimo)」回到はなみずき通 (花水木通) 站, 拍攝 90 度的大彎道, 在此等候好幾台列車, 為此還錯過好幾班回程的車。也許是到了下班/下課時間, 回程車上的人已經變多。

回到藤が丘 (藤丘) 之後, 也和這篇「低速磁浮電車-愛知高速交通東部丘陵線(Linimo)」一樣, 吃了鯛魚燒, 還蠻好吃, 可以一試。

fig 5 鯛魚燒 fig 6 鯛魚燒

回到名古屋車站之後, 逛了ビックカメラ、千里馬藥莊店, 買了滿滿的零食, 結束今天的電車之旅。

fig 7. 千里馬藥莊店

2020年8月8日 星期六

20207/18 (土) ~ 20207/20 (月) volks 攝影作品選拔 (Online DD Photo Contest)

這是ボークス舉辦的線上 DD 攝影比賽 - DDフェス2020「オンラインDDフォトコン」ご応募受付中!! (Online DD Photo Contest)

【参加資格】
  • VS/VIP会員の方
  • ボークスグローバル会員(VOLKS Global Member)の方
上述會員才能參加, 看了一下條件, 並不是要那種很會拍照很會修圖的, 剛好這些我也都不會, 既然已經花了 500 日元買了 VOLKS Global Member, 就投稿看看吧!

趕在截稿之前去外拍了 2B, 就用 2B 當主角吧!

填上以下資料, 再加上 DD 照片即可。
  • お名前:姓名
  • ペンネーム: 暱稱
  • モデルDDのお名前: 2B
  • ベースモデル名: DDDy
  • 会員番号:9920000471362
  • 電話番号:
  • メールアドレス:z@gmail.com
  • 写真のコメント:peace and Virtuous Contract

fig 1. 投稿作品

fig 1 是我的投稿作品。

以下是得獎作品: 「DDフェス2020」閉幕!!

之前有看到頒獎時的 youtube 影片, 不知道為什麼後來徹掉了。

2020年7月31日 星期五

20200603 VOLKS Global Member enrollment (overseas residents only)

拜武漢肺炎之賜 (covid-2019), 2020年6月3日ボークス開始提供「ボークスグローバル会員入会(海外在住者のみ)

本來沒打算購入這個會員, 但後來的 one off model 抽選需要這個會員資格, 所以就購入。

Product nameprice(tax included)quantity

Product code:2300000037005
VOLKS Global Member enrollment (overseas residents only)

477 jpy (tax included)
Subtotal (1 point):477 jpy

Product score 1point
subtotal 477 jpy
Overseas delivery fee 23
Overseas delivery insurance fee 0
Postage  0 Yen
total

gl 會員又不用寄送, 竟然還有 Overseas delivery fee 23, 真奇怪。

gl 之前的會員 status

Membership number:
Holding points:0point
Point expiration date:
Member rank: VOLKS Online Customer

会員番号:
保有ポイント: 0ポイント
会員ランク:VOLKS GLOBAL Membership
会員有効期限:20210606

參加以下的抽選活動:
ドルパ43 オンライン 3weeks【1週目】20200606 SDメモリアルワンオフモデル

one off 只有一個人會中, 我當然沒中獎, 所以省下一筆費用, 不見得是壞事。最近ボークス很多販售活動, 如果都買下, 荷包應該會受不了, 就志在參加, 不在得獎吧!

受付日お申込/受付番号商品名申込合計額結果お支払状況支払期限日時
2020/06/085434ドルパ43ワンオフSD15 SDGr女の子「ベルダンディー」128000落選-

2020年7月25日 星期六

等到望穿秋水的 2b - volks dddy 2b

20181201 訂購 (屬於第三梯次出貨), 20200521 收到
在寫下「volks dd 2b 延遲再延遲出貨」之後, 我以為會等很久才有機會收到 2b, 不過在 20200518 5:40 pm 收到出貨通知。

Your order has been shipped today.
Please check the following details.

=====================================================

[ Order / Entry Information ]
Order / Entry Number :   100557198
Order / Entry day : 2020/05/01

=====================================================

[ Delivery Information ]
Delivery Company(oversea) : EMS / DHL
Delivery Company(in Japan) : Sagawa Express
Tracking number   :  EJ657752129JP
*When there are "EJ" and mentioning in the head of the chase number, it's EMS./

當下實在開心, 畢竟真的等太久了。

如果沒有關稅, 應該 520 就會收到, 和總統就職同慶。然而, 再一次又遇到關稅, 已經連續 3 次都被課關稅。

隔天 (20200521) 將關稅給了郵差之後才收到, EMS 似乎不用 ezway app 實名認證, 方便多了。4 天就收到還真的是蠻快的 (其實應該是 3 天就可以收到)。

國際及大陸各類郵件查詢
郵件號碼:
EJ657752129JP
目前最新處理結果
狀態
處理日期時間
處理單位
詳細資料
離開寄達國互換局
2020/05/20 - 10:23:20

課稅金額:: NT$ 1,186
本件將轉往:
清單號碼:353
郵件詳細處理過程
狀態
處理日期時間
處理單位
詳細資料
海關查驗
2020/05/19 - 19:54:16
到達寄達國互換局
2020/05/19 - 19:51:50
原寄國:日本
出口局:OSAKA INT
總包號碼:1355
已出口-資料詳如右方
2020/05/19 - 07:00:00
目的國:中華民國
目的互換局:TAIPEI
總包號碼:1355
交寄郵件
2020/05/18 - 16:39:00
目的國:中華民國

20181201 訂購 (屬於第三梯次出貨), 20200521 收到, 第一次訂購限定娃就遇到兩次 delay, 等了快一年半的時間, 在這期間, jo 後發先至。

Dollfie Dream Dynamite 2B / YoRHa No.2 Type B (官方頁面)
Dollfie Dream Dynamite 2B / YoRHa No.2 Type B
88,251円(税込)
本体価格:80229 * 1.1 == 88251円

Dollfie Dream® Dynamite 2B (YoRHa二号B型)
原型制作 Serika Misaki(造形村)
娃装制作 VOLKS・Doll企划室
娃眼 树脂眼「2B(YoRHa二号B型)」原创虹膜・18mm
假发 「2B(YoRHa二号B型)」新型原创发型、DD规格尺寸
娃头 采用「2B(YoRHa二号B型)」原创头型
素体 采用DDdy基础身躯(DD-f³)・半白肤色、聚胸型(flatVer.)
套装内容 Doll 本体、假发、发带、战斗用眼带、上衣、裙子、手臂套、内裤、紧身衣、袜子、长靴、手套配件、刀用套装、手腕关节(黑)、刀(白色契约)、刀用流苏装饰、POD(042)、POD专用台座
价格 ¥ 88000 日币 (不含消费税)
发售时间 2018年10月20日(星期六) ~ 2018年12月2日 (星期日) (日本时间) 预订已截止
收货日程 (April 13, 2020 Last Update) 【通知】致预订过2018年「NieR:Automata × Dollfie Dream®」限定订购企划 »

我一直等到截止前一天才決定訂購, 主要考慮以下 2 點:
  1. 半白肌
  2. dddy
一直以來我都只收 dd/普肌, 最主要是配件/娃衣共用的便利性, 娃物價錢高, 可以共用的話會省下不少花費, DD 的衣服有些 jo 就無法穿上。頭可以接受半白。不過衝著特別的 2b 臉妝, 我還是妥協了, 看看之後是不是換個普肌 dddy 身體。

分成兩次付款:
先付訂金:
注文日時:2018年12月01日 23時01分
受注番号:100326580
出荷準備中です。
商品名 数量 単価(税別) 小計(税別)
DDdy 2B(ヨルハ二号B型)【ご予約内金】DDdy 2B(ヨルハ二号B型)【ご予約内金】 1個 10,000円 10,000円

ご請求合計金額:10800 円

這個 10000 訂金還要加上 8% 稅金, 所以是 10800 円。

在時機到的時候, volks 會通知付尾款, 可以參考「volks dd 2b 延遲再延遲出貨」。

注文日時:2020年05月01日 21時42分
受注番号:100357556
宅配伝票番号:EJ657752129JP
出荷日:2020年05月18日
商品名 数量 単価(税別) 小計(税別)
Dollfie Dream Dynamite 2B / YoRHa No.2 Type BDollfie Dream Dynamite 2B / YoRHa No.2 Type B 1個 80229 円

第二次餘額相關明細:

ご請求合計金額:89740円
2b 本體: 80229
手續費: 4211
EMS 運費: 5300 (重量 3800g)

2b: 88000 (不含稅), 88000*1.08 (雖然目前稅是 10%, 但 2b 開賣時是 8%, 所以用 8% 計算) = 95040

80229+4211+10800 (第一次的訂金) = 95240, 和 95040 相比, 怎麼多了 200, 200 是運送保險。

ボークス客服回信
80229yen is the amount without "fee".
The selling price of this product is originally 95040yen (with fee).
This is the total amount of deposit 10800yen (with fee) and booking balance 84240yen (with fee).
*In the end, a shipping insurance fee of 200yen is added to this.

Please be assured that there is no mistake in the displayed amount.

合計: 89740 + 10800 = 100540 円
以上金額包含手續費、EMS 費用。

另外還需要加上國外刷卡手續費用 + [關稅]

89740 + 10800 円, 換算台幣為 25175 + 3030 + 378 + 45 = 28628 NT + 1186 關稅 = 29814

這個價錢實在昂貴, 如果可以的話, 我希望輔助機器人是以加購的方式來購買, 而不一定是要含在 2b 裡頭, 輔助機器人自從組裝拍照之後, 就再也沒有理它了。

2020/04/282020/05/05國外交易服務費(簽帳 3,625 )550154
2020/04/282020/05/05VOLKSHOBBYTENGOKUWE1000015501日圓12,980.003,625申請
2020/05/042020/05/11國外交易服務費(簽帳 25,175 )5501378
2020/05/042020/05/11VOLKSHOBBYTENGOKUWE1000015501日圓89,740.0025,175申請
2020/05/072020/05/13國外交易服務費(簽帳 10,485 )5501157
2020/05/072020/05/13VOLKSHOBBYTENGOKUWE1000015501日圓37,570.0010,485

和 sdgr 的 jo 不同, 只有一個外包裝盒, 取出最外層的包裝盒子之後, 便是 2b 本體的盒子, 盒子的外觀是全黑加上 nier 等字樣, 非常的簡潔樸素, 連 2b 的圖像都沒有, 節省印刷經費嗎?



整體內容物大概分為 4 部份:
  1. 2b dd 本體
  2. 2b 娃衣
  3. 2b 配件 - fig5 的輔助機器人和 2b 的白の契約 (那把大刀)
  4. 簡短說明手冊
fig 5 輔助機器人
輔助機器人分為 4 個部份, 組裝上不太花功夫, 按照卡榫的部份插上即可。

金屬質感看起來相當不錯, 但是接觸到的時候就會有濃濃的塑膠感, 會覺得有點廉價, 重量是很輕的, 真希望是金屬的版本。

另外還有支架和底座 (這 2 個是金屬版本), 底座則是重到不行, 拿的時候請小心, 免得砸到自己的腳。

娃娃本體有用一個塑膠袋包起來, 反而 jo 沒有用塑膠袋包起來, 但 jo 的頭有用護具保護起來; 2b 娃頭則沒有護具保護。

從開箱到把所有的東西拆開、裝扮好、組起來, 大概要花上幾個小時, 而如果有個大空間會比較好辦事, 東西實在太多了。

除了半白肌的手型之外, 另外還有 2 雙黑色手型, 搭配 2b 造型用的, 看過其他娃店提供的 2b 娃服, 有些店家是用手套來提供一樣的黑色手型效果, 這是個比較簡單的處理方案。

volks 提供的黑色手型有 2 種, 一般手型、拿物手型, 大抵是為了拿著「白の契約」才提供拿物手型吧!

2b 付了一件防染衣, 看來 volks 對自家衣服有信心, 雖然大部分都有白內裡 (連眼罩都有白內裡), 但還是有少數的部份直接就是黑色的衣料, 我猶豫了很久, 還是把防染衣穿上了, 我個人很討厭這種阿嬤的防染衣, 也認為娃被染色就算了的心態, 但剛來的娃就染色, 好像也太快了, 膽子小還是先穿上吧!

而這件防染衣為了露出胸部, 竟然在胸部的地方挖了洞, 感覺防染衣會從這個地方破損, 穿上的時候小心翼翼, 深怕弄破防染衣。

由於要套上這個防染衣, 讓整個裝扮時間又拉長不少, 所以我決定先套上一些容易穿上的娃衣, 最後再來穿上 2b 官服。




2b 是使用 ff-3 的骨架, 目前還沒有特別的感受和 dd3 骨架有什麼不同, 但「手首」的部份有點緊, 每次把手型拔出來穿衣服時, 都會特別難拔, 插回去也是一樣, 之前就聽過有娃友有類似的案例, 甚至把手首弄斷, 以 88000 円價位的品質來說, 不太合格阿! 我另外的 DD3 娃, 手首都沒有這樣的問題。

六日有了完整的時間, 可以好好研究怎麼穿上 2B 官服, 單看配件好似不難, 但是上衣用扣的地方實在難倒人, 而在這之前, 得先穿上防染衣, 一樣折騰了不少時間,



再來是那件白色的高腰內褲, 是有分正反面的, 不知道為什麼設計成釦子的, 而不是直接拉上就好。

到這邊難度都不算高, 上衣的部份出了點問題, 當時把雙手打平, 上衣一直無法套起來, 一定要呈現把雙手舉高的樣子才能穿上 (fig 12), 當然頭也要拔掉, 其實說明手冊有寫, 照著做就沒問題。

如果沒有穿上防染衣, 其實也可以拔下雙手來穿上, 有了防染衣, 就沒這麼方便了。

手腕附近的毛狀物, 是用羽毛製作的, ㄜ ... 我討厭毛毛的東西。

再來就剩下扣上的問題, 上衣的右手是開放的, 套上之後要把釦子扣上, 這個動作還真辛苦, 在我汗流浹背之後, 終於完成。

fig 11 fig 12. 這個姿勢才能套進上衣


剩下最後的裙子最簡單, 扣上釦子即可, 再把裙子的摺痕凹一下就完成, 摺痕凹一下會比較漂亮。



好啦! 我知道你們要看蒙眼的 2b, 眼罩來囉! 當然還有那把大刀 - 白の契約, 白の契約的刀把是可拆的, 這樣才能讓持物手從上下兩個方向把刀把拿住。



可汀團購的緊身牛仔褲也在這時候到貨, 那就順便看看休閒裝扮的 2b, 如 fig 6.

fig 6. 緊身牛仔褲, 20200523 收到,
1800 + 65 , 可汀團購
fig 7. 換個頭, 好像也沒違和感

台灣友情店販售價格
2B
訂金預定價:28600(需付訂金3000)
一次付清優惠價:26400(可線上刷卡) ( 優惠11月30日截止 )

9S
訂金預定價:25400(需付訂金3000)
一次付清優惠價:23400(可線上刷卡) ( 優惠11月30日截止 )

付款方式 有下列兩種方式
  1. 11月30日前一次付清: 可接受線上刷卡,請閱讀下方11/12更新
  2. 預付訂金TWD$3000,尾款需在日本通知出貨後30天內須補款,否則視同跑單沒收訂金。

自己購買不見得比友情店便宜, 唯一好處是比友情店先拿到, 我之前有評姑過找友情店買, 全額付款比較便宜, 只是全付款要等一年還是怕怕的, 最後也等了超過一年才出貨, 會更擔心。



fig 8, fig 9 的網球服適用於 dddy, 之前穿在 dd 上裙子會晃來晃去, 在 dddy 上就正常多了。也換下了防染衣, 個人還是不愛防染衣, 不過得小心保護, 免得又染色了。

fig 8 fig 9