{"id":36,"date":"2026-01-09T23:01:57","date_gmt":"2026-01-09T15:01:57","guid":{"rendered":"https:\/\/www.srzki.com\/?p=36"},"modified":"2026-01-09T23:09:21","modified_gmt":"2026-01-09T15:09:21","slug":"%e6%9c%ab%e5%b1%bf%e5%ae%87%e5%ae%99-%e9%80%9a%e8%bf%87-spigot-%e6%8f%92%e4%bb%b6%e5%9c%a8-minecraft-%e8%81%8a%e5%a4%a9%e6%a1%86%e6%98%be%e7%a4%ba%e4%bd%8e%e6%b8%85%e5%9b%be%e7%89%87","status":"publish","type":"post","link":"https:\/\/www.srzki.com\/index.php\/2026\/01\/09\/%e6%9c%ab%e5%b1%bf%e5%ae%87%e5%ae%99-%e9%80%9a%e8%bf%87-spigot-%e6%8f%92%e4%bb%b6%e5%9c%a8-minecraft-%e8%81%8a%e5%a4%a9%e6%a1%86%e6%98%be%e7%a4%ba%e4%bd%8e%e6%b8%85%e5%9b%be%e7%89%87\/","title":{"rendered":"\u672b\u5c7f\u5b87\u5b99 &#8211; \u901a\u8fc7 Spigot \u63d2\u4ef6\u5728 Minecraft \u804a\u5929\u6846\u663e\u793a\u4f4e\u6e05\u56fe\u7247"},"content":{"rendered":"\n<p>\u4ee5\u65b9\u5757\u5b57\u7b26\u4f5c\u4e3a\u50cf\u7d20\u70b9\u663e\u793a\u56fe\u7247<\/p>\n\n\n\n<p>\u4f18\u70b9\uff1a\u53ef\u4ee5\u4e0d\u79bb\u5f00 Minecraft \u754c\u9762\uff0c\u901a\u8fc7\u7f29\u7565\u56fe\uff0c\u5927\u6982\u5224\u65ad\u7fa4\u804a\u4e2d\u56fe\u7247\u7684\u5185\u5bb9\uff0c\u4ece\u800c\u63d0\u5347\u6e38\u620f\u5185\u5916\u6c9f\u901a\u6548\u7387\u3002<br>\u7f3a\u70b9\uff1a\u5206\u8fa8\u7387\u771f\u7684\u5f88\u4f4e\uff08<\/p>\n\n\n\n<p class=\"is-style-text-annotation has-small-font-size is-style-text-annotation--1\"><a href=\"https:\/\/github.com\/Ylkawa\/MoyuUniverse\/blob\/1e673e440c11d1e3a39ad6bb5402a0cb86a98a84\/Minecraft-Connect\/src\/main\/java\/com\/nekoyu\/Universe\/MinecraftConnect\/MinecraftConnectSpigot.java#L150\">https:\/\/github.com\/Ylkawa\/MoyuUniverse\/blob\/1e673e440c11d1e3a39ad6bb5402a0cb86a98a84\/Minecraft-Connect\/src\/main\/java\/com\/nekoyu\/Universe\/MinecraftConnect\/MinecraftConnectSpigot.java#L150<\/a><\/p>\n\n\n\n<pre class=\"wp-block-code has-small-font-size\"><code>ComponentBuilder bc = new ComponentBuilder();\n\nBufferedImage bi = ImageIO.read(imgF.url);\nint maxSize = 40;\ndouble scale = Math.min(\n        (double) maxSize \/ bi.getWidth(),\n        (double) maxSize \/ bi.getHeight()\n);\nint targetWidth  = (int) (bi.getWidth()  * scale);\nint targetHeight = (int) (bi.getHeight() * scale);\nImage scaled = bi.getScaledInstance(targetWidth, targetHeight, Image.SCALE_SMOOTH);\nBufferedImage resized = new BufferedImage(targetWidth, targetHeight, BufferedImage.TYPE_INT_RGB);\nGraphics2D g = resized.createGraphics();\ng.drawImage(scaled, 0, 0, null);\ng.dispose();\nStringBuilder sb = new StringBuilder();\nfor (int y = 0; y &lt; resized.getHeight(); y++) {\n    for (int x = 0; x &lt; resized.getWidth(); x++) {\n        int rgb = resized.getRGB(x, y);\n        int r = (rgb &gt;&gt; 16) &amp; 0xFF;\n        int gr = (rgb &gt;&gt; 8) &amp; 0xFF;\n        int b = rgb &amp; 0xFF;\n        sb.append(colorHex(r, gr, b)).append(\"\u2588\");\n    }\n    sb.append(\"\\n\");\n}\nBaseComponent&#91;] hover = TextComponent.fromLegacyText(sb.toString());\nTextComponent tc = new TextComponent(ChatColor.UNDERLINE + \"&#91;\u56fe\u7247]\");\ntc.setHoverEvent(new HoverEvent(HoverEvent.Action.SHOW_TEXT, new Text(hover)));\nbc.append(tc);<\/code><\/pre>\n\n\n\n<p>\u6d41\u7a0b\u7b80\u800c\u8a00\u4e4b\uff1a<br>\u964d\u5206\u8fa8\u7387 -&gt; \u9010\u50cf\u7d20\u8f6c\u6362\u4e3a\u5e26\u989c\u8272\u6807\u8bb0\u7684\u65b9\u5757\u5b57\u7b26 -&gt; \u4f5c\u4e3a HoverEvent.Action.SHOW_TEXT \u6dfb\u52a0\u5230\u6d88\u606f<\/p>\n\n\n\n<p>\u5177\u4f53\u5b9e\u73b0\u4f7f\u7528\u65b9\u6cd5\uff1a\u5c06\u9f20\u6807\u6307\u9488\u60ac\u6d6e\u5230\u804a\u5929\u6846\u4e2d\u7684 <em>[\u56fe\u7247]<\/em> \u4e0a\uff0c\u5c31\u80fd\u663e\u793a\u5185\u5bb9\u4e86<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"378\" height=\"372\" src=\"https:\/\/www.srzki.com\/wp-content\/uploads\/2026\/01\/\u5c4f\u5e55\u622a\u56fe-2026-01-09-225942.png\" alt=\"\" class=\"wp-image-41\" srcset=\"https:\/\/www.srzki.com\/wp-content\/uploads\/2026\/01\/\u5c4f\u5e55\u622a\u56fe-2026-01-09-225942.png 378w, https:\/\/www.srzki.com\/wp-content\/uploads\/2026\/01\/\u5c4f\u5e55\u622a\u56fe-2026-01-09-225942-300x295.png 300w\" sizes=\"auto, (max-width: 378px) 100vw, 378px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"861\" height=\"1024\" src=\"https:\/\/www.srzki.com\/wp-content\/uploads\/2026\/01\/\u5c4f\u5e55\u622a\u56fe-2026-01-09-230035-861x1024.png\" alt=\"\" class=\"wp-image-42\" srcset=\"https:\/\/www.srzki.com\/wp-content\/uploads\/2026\/01\/\u5c4f\u5e55\u622a\u56fe-2026-01-09-230035-861x1024.png 861w, https:\/\/www.srzki.com\/wp-content\/uploads\/2026\/01\/\u5c4f\u5e55\u622a\u56fe-2026-01-09-230035-252x300.png 252w, https:\/\/www.srzki.com\/wp-content\/uploads\/2026\/01\/\u5c4f\u5e55\u622a\u56fe-2026-01-09-230035-768x913.png 768w, https:\/\/www.srzki.com\/wp-content\/uploads\/2026\/01\/\u5c4f\u5e55\u622a\u56fe-2026-01-09-230035.png 1137w\" sizes=\"auto, (max-width: 861px) 100vw, 861px\" \/><\/figure>\n","protected":false},"excerpt":{"rendered":"<p>\u4ee5\u65b9\u5757\u5b57\u7b26\u4f5c\u4e3a\u50cf\u7d20\u70b9\u663e\u793a\u56fe\u7247 \u4f18\u70b9\uff1a\u53ef\u4ee5\u4e0d\u79bb\u5f00 Minecraft \u754c\u9762\uff0c\u901a\u8fc7\u7f29\u7565\u56fe\uff0c\u5927\u6982\u5224\u65ad\u7fa4\u804a\u4e2d\u56fe\u7247\u7684\u5185\u5bb9 [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-36","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"https:\/\/www.srzki.com\/index.php\/wp-json\/wp\/v2\/posts\/36","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.srzki.com\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.srzki.com\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.srzki.com\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.srzki.com\/index.php\/wp-json\/wp\/v2\/comments?post=36"}],"version-history":[{"count":4,"href":"https:\/\/www.srzki.com\/index.php\/wp-json\/wp\/v2\/posts\/36\/revisions"}],"predecessor-version":[{"id":47,"href":"https:\/\/www.srzki.com\/index.php\/wp-json\/wp\/v2\/posts\/36\/revisions\/47"}],"wp:attachment":[{"href":"https:\/\/www.srzki.com\/index.php\/wp-json\/wp\/v2\/media?parent=36"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.srzki.com\/index.php\/wp-json\/wp\/v2\/categories?post=36"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.srzki.com\/index.php\/wp-json\/wp\/v2\/tags?post=36"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}