Java2D: लाइन की चौड़ाई बढ़ाएँ


81

मैं लाइन 2 डी की चौड़ाई बढ़ाना चाहता हूं। मुझे ऐसा करने का कोई तरीका नहीं मिला। क्या मुझे वास्तव में इस उद्देश्य के लिए एक छोटी आयत बनाने की आवश्यकता है?

जवाबों:


166

आपको ऑब्जेक्ट setStrokeका एक स्ट्रोक सेट करने के लिए उपयोग करना चाहिए Graphics2D

Http://www.java2s.com पर उदाहरण आपको कुछ कोड उदाहरण देता है।

निम्न कोड नीचे दी गई छवि तैयार करता है:

import java.awt.*;
import java.awt.geom.Line2D;
import javax.swing.*;

public class FrameTest {
    public static void main(String[] args) {
        JFrame jf = new JFrame("Demo");
        Container cp = jf.getContentPane();
        cp.add(new JComponent() {
            public void paintComponent(Graphics g) {
                Graphics2D g2 = (Graphics2D) g;
                g2.setStroke(new BasicStroke(10));
                g2.draw(new Line2D.Float(30, 20, 80, 90));
            }
        });
        jf.setSize(300, 200);
        jf.setVisible(true);
    }
}

यहाँ छवि विवरण दर्ज करें

(ध्यान दें कि setStrokeविधि Graphicsवस्तु में उपलब्ध नहीं है । आपको इसे किसी Graphics2Dवस्तु में डालना होगा ।)


इस पोस्ट को यहाँ एक लेख के रूप में फिर से लिखा गया है


28
चित्रण के लिए +1! इसके अलावा, विचार करेंg2.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON)
trashgod

2

क्या है Stroke:

BasicStroke क्लास ग्राफिक्स प्राइमेटिव्स की रूपरेखा के लिए रेंडरिंग विशेषताओं के एक बेसिक सेट को परिभाषित करता है, जो कि Graphics2D ऑब्जेक्ट के साथ प्रदान किया जाता है, जिसमें इसका स्ट्रोके गुण इस BasicStroke पर सेट होता है।

https://docs.oracle.com/javase/7/docs/api/java/awt/BasicStroke.html

ध्यान दें कि Strokeसेटिंग:

Graphics2D g2 = (Graphics2D) g;
g2.setStroke(new BasicStroke(10));

लाइन की चौड़ाई सेट कर रहा है, क्योंकि BasicStroke(float width):

निर्दिष्ट लाइन चौड़ाई और टोपी के लिए डिफ़ॉल्ट मानों और शैलियों में शामिल होने के साथ एक ठोस बेसिकस्ट्रोक का निर्माण करता है।

और, यह अन्य तरीकों को भी प्रभावित करता है जैसे Graphics2D.drawLine(int x1, int y1, int x2, int y2)और Graphics2D.drawRect(int x, int y, int width, int height):

ग्राफिक्स 2 डी इंटरफेस के तरीके जो एक स्ट्रोक ऑब्जेक्ट द्वारा लौटाए गए आउटलाइन शेप का उपयोग करते हैं, में ड्रॉलाइन, ड्रावर, ड्रॉ राउंडरक्ट, ड्रॉऑवल, ड्रॉएप्ली, ड्रापॉलिफ़लाइन और ड्रॉपोलिऑन जैसे तरीके शामिल हैं।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.