<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>NAL-6295の舌先三寸</title><link>https://blog.nal-6295.biz/</link><description>Recent content on NAL-6295の舌先三寸</description><generator>Hugo</generator><language>ja</language><lastBuildDate>Sat, 20 Oct 2018 17:31:53 +0900</lastBuildDate><atom:link href="https://blog.nal-6295.biz/index.xml" rel="self" type="application/rss+xml"/><item><title>レシーバーの定義の違いによる挙動の変化</title><link>https://blog.nal-6295.biz/2018/10/20/golang%E3%83%AC%E3%82%B7%E3%83%BC%E3%83%90%E3%83%BC%E3%81%AE%E5%AE%9A%E7%BE%A9%E3%81%AE%E9%81%95%E3%81%84%E3%81%AB%E3%82%88%E3%82%8B%E6%8C%99%E5%8B%95%E3%81%AE%E5%A4%89%E5%8C%96/</link><pubDate>Sat, 20 Oct 2018 17:31:08 +0900</pubDate><guid>https://blog.nal-6295.biz/2018/10/20/golang%E3%83%AC%E3%82%B7%E3%83%BC%E3%83%90%E3%83%BC%E3%81%AE%E5%AE%9A%E7%BE%A9%E3%81%AE%E9%81%95%E3%81%84%E3%81%AB%E3%82%88%E3%82%8B%E6%8C%99%E5%8B%95%E3%81%AE%E5%A4%89%E5%8C%96/</guid><description>&lt;p&gt;golangで、structにメソッドを定義するときに、レシーバー(funcとメソッド名の間の(hoge TypeName)的なところのこと）を定義します。&lt;/p&gt;&#10;&lt;p&gt;この定義の違いでどのように挙動が変わるのかを以下のサンプルコードで説明します。&lt;/p&gt;&#10;&lt;p&gt;サンプルコード中にコメントで示している型名でレシーバーを定義している方（notPointerMethod)を利用したあとのPrintlnではメソッド内で3を代入していますが実際には1が出力されます。&lt;/p&gt;</description></item><item><title>MagickNetでアニメーションGIFを分解してみよう</title><link>https://blog.nal-6295.biz/2014/02/09/magicknet%E3%81%A7%E3%82%A2%E3%83%8B%E3%83%A1%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3gif%E3%82%92%E5%88%86%E8%A7%A3%E3%81%97%E3%81%A6%E3%81%BF%E3%82%88%E3%81%86/</link><pubDate>Sun, 09 Feb 2014 20:58:09 +0900</pubDate><guid>https://blog.nal-6295.biz/2014/02/09/magicknet%E3%81%A7%E3%82%A2%E3%83%8B%E3%83%A1%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3gif%E3%82%92%E5%88%86%E8%A7%A3%E3%81%97%E3%81%A6%E3%81%BF%E3%82%88%E3%81%86/</guid><description>&lt;p&gt;&lt;a href="https://blog.nal-6295.biz/2014/01/20/magicknetでgifアニメーションを作ろう/" title="MagickNetでGIFアニメーションを作ろう" target="_blank"&gt;前回&lt;/a&gt;はMagickNetでアニメーションGIFを作りました。&lt;/p&gt;&#10;&lt;p&gt;今回は、作ったアニメーションGIFをフレームごとに分解して一つ一つのgifファイルとして保存します。&lt;br /&gt;&#10;MagickNetだと、かなり簡単にできるようになっていますので、いきなりサンプルコードを載せます。&lt;/p&gt;&#10;&lt;p&gt;普段のMagickImageではなくMagickImageCollectionとしてファイルを読み込ませるだけです。&lt;br /&gt;&#10;それだけで各フレームがMagickImageのインスタンスとしてコレクションされているので、１つずつファイルに保存するだけです。&lt;/p&gt;</description></item><item><title>MagickNetでGIFアニメーションを作ろう</title><link>https://blog.nal-6295.biz/2014/01/20/magicknet%E3%81%A7gif%E3%82%A2%E3%83%8B%E3%83%A1%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3%E3%82%92%E4%BD%9C%E3%82%8D%E3%81%86/</link><pubDate>Mon, 20 Jan 2014 00:20:43 +0900</pubDate><guid>https://blog.nal-6295.biz/2014/01/20/magicknet%E3%81%A7gif%E3%82%A2%E3%83%8B%E3%83%A1%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3%E3%82%92%E4%BD%9C%E3%82%8D%E3%81%86/</guid><description>&lt;p&gt;&lt;a href="https://blog.nal-6295.biz/2014/01/13/magicknetで画像を合成してみよう/" title="MagickNetで画像を合成してみよう"&gt;前回&lt;/a&gt;は９分割した画像を合成してもとに戻すというシナリオで画像合成について説明しました。&lt;/p&gt;&#10;&lt;p&gt;今回はGIFアニメーションを作成してみましょう。&lt;br /&gt;&#10;シナリオとしては、前回まで使っていた&lt;br /&gt;&#10;&lt;a href="https://blog.nal-6295.biz/wp-content/uploads/2013/12/sample-mini.jpg"&gt;&lt;img loading="lazy" src="https://blog.nal-6295.biz/wp-content/uploads/2013/12/sample-mini.jpg" alt="sample-mini" width="387" height="518" class="alignnone size-full wp-image-3380" /&gt;&lt;/a&gt;&lt;br /&gt;&#10;を9分割し、600ms間隔で各パーツを表示し&lt;br /&gt;&#10;最後のパーツが表示されてから600ms後に合成されたものを表示するというGIFアニメーションを作成します。&lt;/p&gt;</description></item><item><title>MagickNetで画像を合成してみよう</title><link>https://blog.nal-6295.biz/2014/01/13/magicknet%E3%81%A7%E7%94%BB%E5%83%8F%E3%82%92%E5%90%88%E6%88%90%E3%81%97%E3%81%A6%E3%81%BF%E3%82%88%E3%81%86/</link><pubDate>Mon, 13 Jan 2014 14:06:03 +0900</pubDate><guid>https://blog.nal-6295.biz/2014/01/13/magicknet%E3%81%A7%E7%94%BB%E5%83%8F%E3%82%92%E5%90%88%E6%88%90%E3%81%97%E3%81%A6%E3%81%BF%E3%82%88%E3%81%86/</guid><description>&lt;p&gt;&lt;a href="https://blog.nal-6295.biz/2014/01/13/magicknetで画像を切り取ってみよう/"&gt;前回&lt;/a&gt;は画像の切り取りかたについて説明しました。&lt;/p&gt;&#10;&lt;h2&gt;復習&lt;/h2&gt;&#10;&lt;p&gt;今回は、復習として、いつもの画像を9分割にして保存してみましょう。&lt;/p&gt;&#10;&lt;p&gt;リサイズ後の元画像は以下の通り。&lt;br /&gt;&#10;&lt;a href="https://blog.nal-6295.biz/wp-content/uploads/2013/12/sample-mini.jpg"&gt;&lt;img loading="lazy" src="https://blog.nal-6295.biz/wp-content/uploads/2013/12/sample-mini.jpg" alt="sample-mini" width="387" height="518" class="alignnone size-full wp-image-3380" /&gt;&lt;/a&gt;&lt;/p&gt;&#10;&lt;p&gt;サンプルは以下の通りです&lt;/p&gt;&#10;&lt;div class="highlight" data-lang="csharp"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;private&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;static&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;void&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;リサイズして９分割&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt;&#10;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&#10;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="kt"&gt;var&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;path&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;System&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;IO&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;Path&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;Combine&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;Environment&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;GetFolderPath&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;Environment&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;SpecialFolder&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;Desktop&lt;/span&gt;&lt;span class="p"&gt;),&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s"&gt;"sample.jpg"&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;&#10;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="kt"&gt;byte&lt;/span&gt;&lt;span class="p"&gt;[]&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;byteArray&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;null&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&#10;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="kt"&gt;var&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;width&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&#10;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="kt"&gt;var&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;height&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&#10;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;using&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="kt"&gt;var&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;image&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;new&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;MagickImage&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;path&lt;/span&gt;&lt;span class="p"&gt;))&lt;/span&gt;&#10;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&#10;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="c1"&gt;//リサイズ他にもスケールする％を渡したりなど、いろいろできるので今回は20%指定で&lt;/span&gt;&#10;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;image&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;Resize&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mf"&gt;0.2&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;&#10;&#10;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="c1"&gt;//リサイズ後のサイズを取得&lt;/span&gt;&#10;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;width&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;image&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;Width&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&#10;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;height&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;image&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;Height&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&#10;&lt;span class="w"&gt; &lt;/span&gt;&#10;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="c1"&gt;//pngを指定するよ&lt;/span&gt;&#10;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;image&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;Format&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;MagickFormat&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;Png&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&#10;&#10;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="c1"&gt;//バイト配列に出力&lt;/span&gt;&#10;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;byteArray&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;image&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;ToByteArray&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;&#10;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&#10;&#10;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;foreach&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="kt"&gt;var&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;i&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;in&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;Enumerable&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;Range&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mi"&gt;9&lt;/span&gt;&lt;span class="p"&gt;))&lt;/span&gt;&#10;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&#10;&#10;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;using&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="kt"&gt;var&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;divImage&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;new&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;MagickImage&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;byteArray&lt;/span&gt;&lt;span class="p"&gt;))&lt;/span&gt;&#10;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&#10;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="kt"&gt;var&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;x&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;width&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mi"&gt;3&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;*&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;i&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;%&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mi"&gt;3&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;&#10;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="kt"&gt;var&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;y&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;height&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mi"&gt;3&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;*&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;i&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mi"&gt;3&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;&#10;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="c1"&gt;//ここで画像を切り取っているよ&lt;/span&gt;&#10;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;divImage&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;Crop&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="k"&gt;new&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;MagickGeometry&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;x&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="n"&gt;y&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="n"&gt;width&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mi"&gt;3&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="n"&gt;height&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="mi"&gt;3&lt;/span&gt;&lt;span class="p"&gt;));&lt;/span&gt;&#10;&#10;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="kt"&gt;var&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;outputPngPath&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;System&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;IO&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;Path&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;Combine&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;Environment&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;GetFolderPath&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;Environment&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;SpecialFolder&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;Desktop&lt;/span&gt;&lt;span class="p"&gt;),&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="kt"&gt;string&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;Format&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s"&gt;"image{0}.png"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;i&lt;/span&gt;&lt;span class="p"&gt;));&lt;/span&gt;&#10;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;divImage&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;Write&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;outputPngPath&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;&#10;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&#10;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&#10;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&#10;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&#10;&lt;p&gt;今回一度リサイズしpngにした後の結果をファイルに保存するのではなく、&lt;/p&gt;</description></item><item><title>MagickNetで画像を切り取ってみよう</title><link>https://blog.nal-6295.biz/2014/01/13/magicknet%E3%81%A7%E7%94%BB%E5%83%8F%E3%82%92%E5%88%87%E3%82%8A%E5%8F%96%E3%81%A3%E3%81%A6%E3%81%BF%E3%82%88%E3%81%86/</link><pubDate>Mon, 13 Jan 2014 04:32:41 +0900</pubDate><guid>https://blog.nal-6295.biz/2014/01/13/magicknet%E3%81%A7%E7%94%BB%E5%83%8F%E3%82%92%E5%88%87%E3%82%8A%E5%8F%96%E3%81%A3%E3%81%A6%E3%81%BF%E3%82%88%E3%81%86/</guid><description>&lt;p&gt;&lt;a href="https://blog.nal-6295.biz/2014/01/02/magicknetで画像の回転と画像フォーマットの変更をしよ/" title="MagickNetで画像の回転と画像フォーマットの変更をしよう"&gt;前回&lt;/a&gt;は、画像の回転と画像フォーマットの変更について説明しました。&lt;/p&gt;&#10;&lt;p&gt;今回は、画像を切り取ってみようと思います。&lt;/p&gt;&#10;&lt;p&gt;リサイズで20％にした画像を中心を軸に縦横半分ずつ残します。&lt;/p&gt;&#10;&lt;p&gt;リサイズしただけの画像&lt;br /&gt;&#10;&lt;a href="https://blog.nal-6295.biz/wp-content/uploads/2013/12/sample-mini.jpg"&gt;&lt;img loading="lazy" src="https://blog.nal-6295.biz/wp-content/uploads/2013/12/sample-mini.jpg" alt="sample-mini" width="387" height="518" class="alignnone size-full wp-image-3380" /&gt;&lt;/a&gt;&lt;/p&gt;&#10;&lt;p&gt;画像を切り取るときにはCropというメソッドを利用し、オーバーロードが3種類あります。&lt;/p&gt;&#10;&lt;div class="highlight" data-lang="csharp"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="w"&gt; &lt;/span&gt;&#10;&lt;span class="c1"&gt;//重心を規定し、そこから縦横指定したサイズで切り取る&lt;/span&gt;&#10;&lt;span class="n"&gt;image&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;Crop&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;width&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;height&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;Gravity&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;Center&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&#10;&lt;span class="c1"&gt;//中心を重心とし、そこから縦横指定したサイズで切り取る&lt;/span&gt;&#10;&lt;span class="n"&gt;image&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;Crop&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;width&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;height&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&#10;&lt;span class="c1"&gt;//平面領域を指定し、そこを残す(下の例だと開始位置と、そこからのサイズを指定している)&lt;/span&gt;&#10;&lt;span class="n"&gt;image&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;Crop&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="k"&gt;new&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;MagickGeometry&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;x&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="n"&gt;y&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="n"&gt;width&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="n"&gt;height&lt;/span&gt;&lt;span class="p"&gt;));&lt;/span&gt;&#10;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&#10;&lt;p&gt;上２つは基本的にはGravityによって指定された場所から切り取る指定方法となっている。&lt;/p&gt;</description></item><item><title>MagickNetで画像の回転と画像フォーマットの変更をしよう</title><link>https://blog.nal-6295.biz/2014/01/02/magicknet%E3%81%A7%E7%94%BB%E5%83%8F%E3%81%AE%E5%9B%9E%E8%BB%A2%E3%81%A8%E7%94%BB%E5%83%8F%E3%83%95%E3%82%A9%E3%83%BC%E3%83%9E%E3%83%83%E3%83%88%E3%81%AE%E5%A4%89%E6%9B%B4%E3%82%92%E3%81%97%E3%82%88/</link><pubDate>Thu, 02 Jan 2014 17:49:27 +0900</pubDate><guid>https://blog.nal-6295.biz/2014/01/02/magicknet%E3%81%A7%E7%94%BB%E5%83%8F%E3%81%AE%E5%9B%9E%E8%BB%A2%E3%81%A8%E7%94%BB%E5%83%8F%E3%83%95%E3%82%A9%E3%83%BC%E3%83%9E%E3%83%83%E3%83%88%E3%81%AE%E5%A4%89%E6%9B%B4%E3%82%92%E3%81%97%E3%82%88/</guid><description>&lt;p&gt;前回の&lt;a href="https://blog.nal-6295.biz/2013/12/31/magicknetことはじめ/"&gt;MagickNetことはじめ&lt;/a&gt;に続いて、画像を回転させてみましょう。&lt;/p&gt;&#10;&lt;p&gt;あ、あけましておめでとうございます。今年もよろしくお願いします。&lt;/p&gt;&#10;&lt;p&gt;前回はリサイズで20%のサイズにしました。&lt;br /&gt;&#10;今回はそれに加えて画像を45°傾けてみましょう。&lt;/p&gt;&#10;&lt;p&gt;とりあえずjpegのままで保存します。&lt;br /&gt;&#10;コードとしては以下のように前回のコードにRotateが追加されただけです。&lt;br /&gt;&#10;これに傾けたい度数をdoubleで与えてあげるだけで画像が傾きます。&lt;/p&gt;</description></item><item><title>MagickNetことはじめ</title><link>https://blog.nal-6295.biz/2013/12/31/magicknet%E3%81%93%E3%81%A8%E3%81%AF%E3%81%98%E3%82%81/</link><pubDate>Tue, 31 Dec 2013 17:09:08 +0900</pubDate><guid>https://blog.nal-6295.biz/2013/12/31/magicknet%E3%81%93%E3%81%A8%E3%81%AF%E3%81%98%E3%82%81/</guid><description>&lt;h2&gt;What's MagickNet.&lt;/h2&gt;&#10;&lt;p&gt;&lt;a href="http://magick.codeplex.com/"&gt;MagickNet&lt;/a&gt;は画像処理ライブラリとして有名な&lt;a href="http://www.imagemagick.org/script/index.php"&gt;ImageMagick&lt;/a&gt;のC++ API &lt;a href="http://www.imagemagick.org/Magick++/"&gt;Magick++&lt;/a&gt;をラッピングしてManaged Objectとして&lt;a href="http://www.microsoft.com/ja-jp/net/"&gt;.NET Framework&lt;/a&gt;上で利用できるようにしたものです。&lt;/p&gt;&#10;&lt;h2&gt;Getting Started.&lt;/h2&gt;&#10;&lt;p&gt;NuGet Galleryに登録されているので、そこから利用することが可能となっていますが、色の分解能、アプリケーションが32bitか64bitによって以下の４種類に分けられています。&lt;br /&gt;&#10;16bit per pixelは8bit per pixelのものよりリソースを余分に使います。&lt;/p&gt;</description></item><item><title>映画と寿司</title><link>https://blog.nal-6295.biz/2013/12/23/%E6%98%A0%E7%94%BB%E3%81%A8%E5%AF%BF%E5%8F%B8/</link><pubDate>Mon, 23 Dec 2013 22:46:49 +0900</pubDate><guid>https://blog.nal-6295.biz/2013/12/23/%E6%98%A0%E7%94%BB%E3%81%A8%E5%AF%BF%E5%8F%B8/</guid><description>&lt;p&gt;&lt;a title="寿司 Advent Calendar 2013" href="http://www.adventar.org/calendars/70" target="_blank"&gt;寿司 Advent Calendar 2013　23日目&lt;/a&gt;の記事です。&lt;/p&gt;&#10;&lt;p&gt;そして、18日から続いた&lt;a href="http://grani.jp/" target="_blank"&gt;弊社&lt;/a&gt;の&lt;a href="http://blog.o2p.jp/2013/12/18/sushi.html" target="_blank"&gt;エ&lt;/a&gt;&lt;a href="http://hosomichi.hatenablog.com/entry/2013/12/20/012020" target="_blank"&gt;ン&lt;/a&gt;&lt;a href="http://miscellany.tanaka733.net/entry/2013/12/20/202827" target="_blank"&gt;ジ&lt;/a&gt;&lt;a href="http://sri-1128.hatenablog.com/" target="_blank"&gt;ニ&lt;/a&gt;&lt;a href="http://tech.guitarrapc.com/entry/2013/12/22/235900" target="_blank"&gt;ア&lt;/a&gt;達による寿司 Advent Calendar Jackの最終日です。&lt;/p&gt;&#10;&lt;h2&gt;映画&lt;/h2&gt;&#10;&lt;p&gt;寿司好きなら一度は訪れてみたい寿司屋があります。 &lt;a title="銀座 すきやばし次郎" href="http://www.sushi-jiro.jp/" target="_blank"&gt;銀座 すきやばし次郎&lt;/a&gt; です。&lt;/p&gt;&#10;&lt;p&gt;今年で6年連続ミシュラン三ツ星をいただいています。 今日は、そんな寿司屋「銀座 すきやばし次郎」に行ってきた・・・わけではなく、&lt;br /&gt;&#10;映画&lt;a href="http://jiro-movie.com/" target="_blank"&gt;二郎は鮨の夢を見る&lt;/a&gt; について話したいと思います。&lt;/p&gt;</description></item><item><title>[ASP.NET MVC][C#]Controllerで複数のcheckboxの状態を個々のチェック状態のBooleanではなく、チェックされているものだけの配列を引数で受け取りたい</title><link>https://blog.nal-6295.biz/2013/12/20/asp-net-mvcccontroller%E3%81%A7%E8%A4%87%E6%95%B0%E3%81%AEcheckbox%E3%81%AE%E7%8A%B6%E6%85%8B%E3%82%92%E5%80%8B%E3%80%85%E3%81%AE%E3%83%81%E3%82%A7%E3%83%83%E3%82%AF%E7%8A%B6%E6%85%8B%E3%81%AEboo/</link><pubDate>Fri, 20 Dec 2013 10:00:28 +0900</pubDate><guid>https://blog.nal-6295.biz/2013/12/20/asp-net-mvcccontroller%E3%81%A7%E8%A4%87%E6%95%B0%E3%81%AEcheckbox%E3%81%AE%E7%8A%B6%E6%85%8B%E3%82%92%E5%80%8B%E3%80%85%E3%81%AE%E3%83%81%E3%82%A7%E3%83%83%E3%82%AF%E7%8A%B6%E6%85%8B%E3%81%AEboo/</guid><description>&lt;p&gt;この記事は &lt;a href="http://www.adventar.org/calendars/132" title="One ASP.NET Advent Calendar 2013" target="_blank"&gt;One ASP.NET Advent Calendar 2013&lt;/a&gt;の20日目の記事です。&lt;/p&gt;&#10;&lt;p&gt;複数のinput type="checkbox"の状態をControllerで受け取るときに、個々のcheckboxの状態をBooleanではなく、チェックされているものだけを配列として受け取りたい。&lt;/p&gt;&#10;&lt;p&gt;というテーマです。&lt;/p&gt;&#10;&lt;p&gt;シナリオは以下の流れ&lt;br /&gt;&#10;1.寿司ネタがチェックボックス付きでリストアップ&lt;br /&gt;&#10;2.その中から好きな寿司ネタにチェックを入れる&lt;br /&gt;&#10;3.「報告」ボタンを押すと、好きな寿司ネタを報告した結果が表示される（実際には表示するだけで何もしない）&lt;/p&gt;</description></item><item><title>[C#][Memo]Magick.Netの画像読み込みをByteArrayで行う時、並列で動かすと例外が発行される件とその対処</title><link>https://blog.nal-6295.biz/2013/12/17/cmemomagick-net%E3%81%AE%E7%94%BB%E5%83%8F%E8%AA%AD%E3%81%BF%E8%BE%BC%E3%81%BF%E3%82%92bytearray%E3%81%A7%E8%A1%8C%E3%81%86%E6%99%82%E3%80%81%E4%B8%A6%E5%88%97%E3%81%A7%E5%8B%95%E3%81%8B%E3%81%99/</link><pubDate>Tue, 17 Dec 2013 21:00:17 +0900</pubDate><guid>https://blog.nal-6295.biz/2013/12/17/cmemomagick-net%E3%81%AE%E7%94%BB%E5%83%8F%E8%AA%AD%E3%81%BF%E8%BE%BC%E3%81%BF%E3%82%92bytearray%E3%81%A7%E8%A1%8C%E3%81%86%E6%99%82%E3%80%81%E4%B8%A6%E5%88%97%E3%81%A7%E5%8B%95%E3%81%8B%E3%81%99/</guid><description>&lt;p&gt;世の中には&lt;a href="https://magick.codeplex.com/" title="Magick.NET" target="_blank"&gt;Magick.NET&lt;/a&gt;というImageMagickをラップした便利なライブラリがあり私も利用しています。&lt;/p&gt;&#10;&lt;p&gt;利用している中である条件の時だけ例外が発行されるという事象に遭遇しました。&lt;br /&gt;&#10;今回は、どういう状況で発生し、それをどうクリアしたのかという話です。&lt;/p&gt;&#10;&lt;h2&gt;事象&lt;/h2&gt;&#10;&lt;p&gt;MagickImageインスタンスのコンストラクションをByteArrayで行う時&lt;br /&gt;&#10;特に並列で動かして無いとき正常に動作する。（以下サンプルコード）&lt;/p&gt;</description></item><item><title>[C#][Web]Unicode絵文字とキャリア絵文字そしてSystem.Globarization.StringInfo.GetTextElementEnumeratorメソッド</title><link>https://blog.nal-6295.biz/2013/10/12/cwebunicode%E7%B5%B5%E6%96%87%E5%AD%97%E3%81%A8%E3%82%AD%E3%83%A3%E3%83%AA%E3%82%A2%E7%B5%B5%E6%96%87%E5%AD%97%E3%81%9D%E3%81%97%E3%81%A6system-globarization-stringinfo-gettextelementenumerator/</link><pubDate>Sat, 12 Oct 2013 03:22:20 +0900</pubDate><guid>https://blog.nal-6295.biz/2013/10/12/cwebunicode%E7%B5%B5%E6%96%87%E5%AD%97%E3%81%A8%E3%82%AD%E3%83%A3%E3%83%AA%E3%82%A2%E7%B5%B5%E6%96%87%E5%AD%97%E3%81%9D%E3%81%97%E3%81%A6system-globarization-stringinfo-gettextelementenumerator/</guid><description>&lt;p&gt;今更感漂うのですが8月のこみゅぷらす勉強会で話した時に使った資料をブログで公開するの忘れていたので公開しておきます。&lt;/p&gt;&#10;&lt;p&gt;Unicode絵文字とキャリア絵文字について＋で、実際に相互変換はどうしているのかというあたりをザックリと書いてあります。&lt;br /&gt;&#10;C#タグがついているのは相互変換をやるのにC#を使っているからです。&lt;/p&gt;</description></item><item><title>phpのpreg_replace_callbackをc#で書くと・・・ #php #csharp #memo</title><link>https://blog.nal-6295.biz/2013/07/02/php%E3%81%AEpreg_replace_callback%E3%82%92c%E3%81%A7%E6%9B%B8%E3%81%8F%E3%81%A8%E3%83%BB%E3%83%BB%E3%83%BB-php-csharp-memo/</link><pubDate>Tue, 02 Jul 2013 01:25:07 +0900</pubDate><guid>https://blog.nal-6295.biz/2013/07/02/php%E3%81%AEpreg_replace_callback%E3%82%92c%E3%81%A7%E6%9B%B8%E3%81%8F%E3%81%A8%E3%83%BB%E3%83%BB%E3%83%BB-php-csharp-memo/</guid><description>&lt;p&gt;PHPにpreg_replace_callbackという関数があります。&lt;/p&gt;&#10;&lt;p&gt;正規表現検索を行い、コールバック関数を使用して置換を行う&lt;br /&gt;&#10;&lt;a href="http://php.net/manual/ja/function.preg-replace-callback.php"&gt;http://php.net/manual/ja/function.preg-replace-callback.php&lt;/a&gt;&lt;/p&gt;&#10;&lt;p&gt;というものです。&lt;/p&gt;&#10;&lt;p&gt;これをC#でやるときは、&lt;/p&gt;&#10;&lt;p&gt;System.Text.RegularExpressions.Regex.Replace メソッド (String, String, MatchEvaluator)&lt;br /&gt;&#10;&lt;a href="http://msdn.microsoft.com/ja-jp/library/ht1sxswy.aspx"&gt;http://msdn.microsoft.com/ja-jp/library/ht1sxswy.aspx&lt;/a&gt;&lt;/p&gt;&#10;&lt;p&gt;を利用します。&lt;/p&gt;&#10;&lt;p&gt;第1引数が入力文字列で、&lt;br /&gt;&#10;第2引数が検索のための正規表現文字列です。&lt;br /&gt;&#10;第3引数のMatchEvaluatorデリゲートの中でマッチした部分文字列に対して置換処理を行います。&lt;/p&gt;</description></item><item><title>Windows 8でMicrosoftアカウントと関連付けたアカウントにUnityをインストールして起動したい時 #unity</title><link>https://blog.nal-6295.biz/2013/06/30/windows-8%E3%81%ABunity%E3%82%84virtualbox%E3%82%92%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB%E3%81%97%E3%81%A6%E8%B5%B7%E5%8B%95%E3%81%97%E3%81%9F%E3%81%84%E6%99%82-unity/</link><pubDate>Sun, 30 Jun 2013 15:04:13 +0900</pubDate><guid>https://blog.nal-6295.biz/2013/06/30/windows-8%E3%81%ABunity%E3%82%84virtualbox%E3%82%92%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB%E3%81%97%E3%81%A6%E8%B5%B7%E5%8B%95%E3%81%97%E3%81%9F%E3%81%84%E6%99%82-unity/</guid><description>&lt;p&gt;Windows 8にUnityやVirtualBoxをインストールして起動したい時、Microsoftアカウントと関連付けて日本語名で作成したアカウントだと起動に失敗します。&lt;br /&gt;&#10;それでもMicrosoftアカウントと関連付けしたい時は以下の手順で&lt;/p&gt;&#10;&lt;p&gt;Step1.アルファベットでローカルアカウントを作成&lt;br /&gt;&#10;Step2.ユーザの設定変更でMicrosoftアカウントと関連付けを行う&lt;br /&gt;&#10;Step3.Unityなどをインストールする。&lt;/p&gt;</description></item><item><title>VAIO Pro 13"を購入しました #物欲</title><link>https://blog.nal-6295.biz/2013/06/30/vaio-pro-13%E3%82%92%E8%B3%BC%E5%85%A5%E3%81%97%E3%81%BE%E3%81%97%E3%81%9F-%E7%89%A9%E6%AC%B2/</link><pubDate>Sun, 30 Jun 2013 03:26:59 +0900</pubDate><guid>https://blog.nal-6295.biz/2013/06/30/vaio-pro-13%E3%82%92%E8%B3%BC%E5%85%A5%E3%81%97%E3%81%BE%E3%81%97%E3%81%9F-%E7%89%A9%E6%AC%B2/</guid><description>&lt;p&gt;VAIO Pro 13"を購入しました。&lt;br /&gt;&#10;最後にVAIO　X,P,Zを一気に手放してMacBook Air一色にしたのが2010年の11月なので、実に2年8か月くらいぶりにVAIOに戻ってきました。&lt;/p&gt;&#10;&lt;p&gt;ここ数年のVAIOのラインナップを見ると、どんどん軽量ハイパフォーマンスモデルがラインナップから消えていき（Zすら消えた）、他社はまるでVAIOのお株を奪うかのようにLavie ZやKIRAなど一部のスペックを除けば魅力的にうつる（でも買うまでには至らない）モデルが出てきていたので、もうVAIOの時代は終わってしまったのか、もうVAIOに惹かれることはないのかと思っていました。&lt;br /&gt;&#10;（まぁ、初代VAIO Duoには惹かれましたが、11インチで1.4kgはちょっと辛いというところで・・・）&lt;/p&gt;</description></item><item><title>転職してひと月経ちました</title><link>https://blog.nal-6295.biz/2013/06/01/%E8%BB%A2%E8%81%B7%E3%81%97%E3%81%A6%E3%81%B2%E3%81%A8%E6%9C%88%E7%B5%8C%E3%81%A1%E3%81%BE%E3%81%97%E3%81%9F/</link><pubDate>Sat, 01 Jun 2013 00:05:05 +0900</pubDate><guid>https://blog.nal-6295.biz/2013/06/01/%E8%BB%A2%E8%81%B7%E3%81%97%E3%81%A6%E3%81%B2%E3%81%A8%E6%9C%88%E7%B5%8C%E3%81%A1%E3%81%BE%E3%81%97%E3%81%9F/</guid><description>&lt;p&gt;一ヶ月前にクルーズ株式会社を退職しました。&lt;/p&gt;&#10;&lt;p&gt;もともと、C#erだった私でしたが、クルーズで何をやっていたかというと、&lt;/p&gt;&#10;&lt;p&gt;JavaScriptベースのフレームワークを利用したiPhone/Android向けネイティブアプリ開発&lt;br /&gt;&#10;C#を利用した社内システム開発チームのタスク管理及び、開発&lt;br /&gt;&#10;PHPを利用した社内システム開発&lt;/p&gt;</description></item><item><title>SelectManyでreturn nullはご法度 #linq #csharp 訂正あり</title><link>https://blog.nal-6295.biz/2013/05/26/selectmany%E3%81%A7return-null%E3%81%AF%E3%81%94%E6%B3%95%E5%BA%A6-linq-csharp/</link><pubDate>Sun, 26 May 2013 16:37:09 +0900</pubDate><guid>https://blog.nal-6295.biz/2013/05/26/selectmany%E3%81%A7return-null%E3%81%AF%E3%81%94%E6%B3%95%E5%BA%A6-linq-csharp/</guid><description>&lt;p&gt;久しぶりのブログということで、細かいことを少しだけ。&lt;/p&gt;&#10;&lt;p&gt;編集：指摘に合わせてサンプルコードを初出に比べて一部修正してあります。&lt;br /&gt;&#10;6/2:nullで例外を返すサンプルがnullを返さなくなっていたので修正&lt;/p&gt;&#10;&lt;p&gt;&lt;a title="LINQ: .NET 統合言語クエリ" href="http://msdn.microsoft.com/ja-jp/library/bb308959.aspx" target="_blank"&gt;LINQ&lt;/a&gt;に実装されている拡張メソッドの一つにSelectMany&lt;br /&gt;&#10;というものがあり作用としては、Selectと同じ作用＋配列の平坦化を行なってくれるという活用しどころの多い拡張メソッドの一つです。&lt;/p&gt;</description></item><item><title>メモ：Thomas v James.com — Getting NewRelic monitoring working on Mono .Net Web Apps</title><link>https://blog.nal-6295.biz/2013/04/22/%E3%83%A1%E3%83%A2%EF%BC%9Athomas-v-james-com-getting-newrelic-monitoring-working-on-mono-net-web-apps/</link><pubDate>Mon, 22 Apr 2013 02:26:40 +0900</pubDate><guid>https://blog.nal-6295.biz/2013/04/22/%E3%83%A1%E3%83%A2%EF%BC%9Athomas-v-james-com-getting-newrelic-monitoring-working-on-mono-net-web-apps/</guid><description>&lt;p&gt;まだ、ちゃんと読んでないけど、どうもnew relicをサポート対象外のmonoで動かしているらしい。&lt;br /&gt;&#10;もちろんyour own riskだけど。&lt;/p&gt;&#10;&lt;p&gt;&lt;a href='http://www.thomasvjames.com/2012/07/getting-newrelic-monitoring-working-on-mono-net-web-apps/'&gt;Thomas v James.com — Getting NewRelic monitoring working on Mono .Net Web Apps&lt;/a&gt;.&lt;/p&gt;</description></item><item><title>Logicool Utltrathin Keyboard miniが届いたのでいろいろ試して見た</title><link>https://blog.nal-6295.biz/2013/04/21/logicool-utltrathin-keyboard-mini%E3%81%8C%E5%B1%8A%E3%81%84%E3%81%9F%E3%81%AE%E3%81%A7%E3%81%84%E3%82%8D%E3%81%84%E3%82%8D%E8%A9%A6%E3%81%97%E3%81%A6%E8%A6%8B%E3%81%9F/</link><pubDate>Sun, 21 Apr 2013 16:41:38 +0900</pubDate><guid>https://blog.nal-6295.biz/2013/04/21/logicool-utltrathin-keyboard-mini%E3%81%8C%E5%B1%8A%E3%81%84%E3%81%9F%E3%81%AE%E3%81%A7%E3%81%84%E3%82%8D%E3%81%84%E3%82%8D%E8%A9%A6%E3%81%97%E3%81%A6%E8%A6%8B%E3%81%9F/</guid><description>&lt;p&gt;AppleStoreで注文しておいたLogicool Ultrathin Keyboard miniが届いたので試して見た結果をバラバラと記述してみる。&lt;/p&gt;&#10;&lt;p&gt;ちなみに検証としてさくらのVPSにPHP、MySQL、WordPressをインストールしてみた。&lt;/p&gt;&#10;&lt;p&gt;まずは、キーピッチについて。&lt;br /&gt;&#10;アルファベットにあたる部分については全く問題を感じないレベルで快適に入力できる。&lt;br /&gt;&#10;しかし、そのしわ寄せとして特殊キーが細長くなっている点や、Esc、TabがFnキーとの組み合わせでしか使えなかったりといったデメリットがある。&lt;br /&gt;&#10;インストール作業はsshで行ったのだが上記のキーを比較的多用する作業なので、慣れるまでは大変。特にEscはホームキーに割り当てられているのでうっかりFn押さないで押しちゃうとsshアプリを閉じてしまう（もちろん切断はされないが・・・）のでめんどくさいことに。&lt;br /&gt;&#10;パスを補完するときにTabキーを使うのだけどこちらはqに割り当てられているので、うっかりQQQQQとなることが何度かあった。&lt;/p&gt;</description></item><item><title>#php 向け #LINQ もどきArrayWrapper for PHPでleft joinとjoinキーにラムダを設定できるようにした</title><link>https://blog.nal-6295.biz/2013/04/09/php-%E5%90%91%E3%81%91-linq-%E3%82%82%E3%81%A9%E3%81%8Darraywrapper-for-php%E3%81%A7left-join%E3%81%A8join%E3%82%AD%E3%83%BC%E3%81%AB%E3%83%A9%E3%83%A0%E3%83%80%E3%82%92%E8%A8%AD%E5%AE%9A%E3%81%A7/</link><pubDate>Tue, 09 Apr 2013 22:00:22 +0900</pubDate><guid>https://blog.nal-6295.biz/2013/04/09/php-%E5%90%91%E3%81%91-linq-%E3%82%82%E3%81%A9%E3%81%8Darraywrapper-for-php%E3%81%A7left-join%E3%81%A8join%E3%82%AD%E3%83%BC%E3%81%AB%E3%83%A9%E3%83%A0%E3%83%80%E3%82%92%E8%A8%AD%E5%AE%9A%E3%81%A7/</guid><description>&lt;p&gt;ArrayWrapper for PHPで今まではJOINのキーには連想配列のキー名を指定するだけしかできませんでしたが、ラムダ式を渡せるようになりました。&lt;br /&gt;&#10;これによって、指定したキーの値が連想配列だった場合など、さらに深い項目をキーに指定したり、加工した結果をキーに指定したりすることができるようになりました。&lt;br /&gt;&#10;また、INNER JOINのみ対応していましたが、LEFT JOINにも対応することでJOINの活用の幅が広がりました。&lt;/p&gt;</description></item><item><title>#PHPで#LINQっぽい事ができるWrapperを作ってみた</title><link>https://blog.nal-6295.biz/2013/03/14/php%E3%81%A7linq%E3%81%A3%E3%81%BD%E3%81%84%E4%BA%8B%E3%81%8C%E3%81%A7%E3%81%8D%E3%82%8Bwrapper%E3%82%92%E4%BD%9C%E3%81%A3%E3%81%A6%E3%81%BF%E3%81%9F/</link><pubDate>Thu, 14 Mar 2013 02:21:57 +0900</pubDate><guid>https://blog.nal-6295.biz/2013/03/14/php%E3%81%A7linq%E3%81%A3%E3%81%BD%E3%81%84%E4%BA%8B%E3%81%8C%E3%81%A7%E3%81%8D%E3%82%8Bwrapper%E3%82%92%E4%BD%9C%E3%81%A3%E3%81%A6%E3%81%BF%E3%81%9F/</guid><description>&lt;p&gt;LAMPな会社に来て１年半がたち、１ヶ月前にPHPデビューをしました。&lt;br /&gt;&#10;で、やっぱりいろいろツライところがあったのと、風呂あがりに思い立ったのと、いろいろと触発されたところあって、PHPでLINQっぽく配列操作ができるWrapperを作ってみました。&lt;br /&gt;&#10;実際に、最近恩恵に預かっているので作ってよかったなと思っています。&lt;/p&gt;</description></item></channel></rss>